• Python 中 sys.argv 用法详解


    一、Python sys 模块

    “sys” 是 “system”,是一个系统模块,该模块提供了一些接口,用户访问python解释器自身使用和维护的变量,同时模块中还提供了一些函数,而我们今天要讲解的 argv 就是其中一个函数。

    二、sys.argv

    上一篇文章我们讲到了引用模块,这里sys 就相当于一个模块,而argv就是模块里的一个函数。
    “argv” 即 “argument value” 是一个列表对象,其中存储的是在命令行调用 python 脚本是提供的 “命令行参数”。
    这里重点理解这句话,我们举例来说明:
    先看一个简单的例子:

    import sys
    print(sys.argv[0])
    
    • 1
    • 2

    我们看一下输出结果:
    这里我们将 文件命名为 test.py 放在我们的系统目录下,在cmd下执行:python test.py
    在这里插入图片描述
    我们看一下输出结果;
    在这里插入图片描述
    可以看到结果是:被调用的脚本文件名或全路径
    这里需要强调的是:argv[0] 是 被调用的脚本文件名或全路径
    那我们改一下程序,再试试:

    import sys
    print(sys.argv[1])
    
    • 1
    • 2

    这里我们将代码改成 argv[1]
    此时我们输入 python test.py hello 看一下运行结果:
    在这里插入图片描述
    看到这,是不是有的小伙伴就明白啦,sys.argv[]其实就是一个列表。
    那我们再试一个,既然sys.argv是一个列表,我们就让它从第三个开始输出:

    import sys
    print(sys.argv[2:])
    
    • 1
    • 2

    看一下运行结果:
    在这里插入图片描述
    这次我们输入的是 1 2 3 4 5 ,我们期望从列表的第三个元素开始输出,结果也很我们期望的一样,讲到这里,sys.argv就被我们彻底搞懂了。

    总结:

    sys.argv[]是一个列表
    sys.argv[0]是被调用的脚本文件名或全路径
    sys.argv[1:]之后的元素就是我们从程序外部输入的,而非代码本身的,想要看到它的效果,就要将程序保存,从外部运行程序并给参数,这也是我们在cmd里面运行的原因。

    提升:

    既然已经搞明白了 sys.argv[]的基本用法,那我们再测试一下:

    import sys
    for index,arg in enumerate(sys.argv):
        print("第%d个参数是: %s" % (index, arg))
    
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述
    这次输入: a b c d e
    我们可以看到输出结果是将 脚本文件名和我们输入的参数依次输出。

  • 相关阅读:
    制氧机厂家有哪四大优势
    排序算法之选择排序
    Centos 7配置开机自启Springboot项目
    C++ 快速排序算法
    以自主技术跃进的综合冲压的顶级制造商
    Python表白比心
    docker下Jenkins的部署和升级
    7.6 分组的背包问题7.7 有依赖的背包问题7.8 泛化物品
    程序员眼中的中秋
    10 个 Python set 常用操作函数!,oppoPython 面试题
  • 原文地址:https://blog.csdn.net/fancynthia/article/details/126271660