博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python的sys.argv使用说明
阅读量:7136 次
发布时间:2019-06-28

本文共 1384 字,大约阅读时间需要 4 分钟。

刚开始使用这个参数的时候,很不明白其含义.网上搜索很多都是贴的官网上面的一则实例,说看懂,就明白.可是,我看不懂.现在在回头看这个参数使用,并不是很麻烦.

举几个小例子就明白了.

创建一个脚本,内容如下

1  #conding:utf-82  import sys #导入sys模块3  print(sys.argv[0]) # 打印sys.argv的第0个参数

来运行一下这个脚本,我们随便给他点参数,1个,2个,3个或更多都行.

1 $ python3.6 1234.py a b c d e f 2 1234.py

得出结果就显示当前脚本名,这里我们就可以得出第一个结论.

sys.argv[0] 返回是的脚本

现在我们修改一下脚本, 内容如下

1 #conding:utf-82 import sys #导入sys模块3 print(sys.argv[1]) # 打印sys.argv的第1个参数

执行如下

1 $ python3.6 1234.py a b c d e f 2 a

得出结果就是第一个参数的值.通过这样类推,我们就是知道sys.argv参数的效果了.

返回脚本本身的名字及给定脚本的参数.

了解shell脚本编程的可以这样理解这些参数,sys.argv[0] 就是shell 脚本中的basename ,而sys.argv[1]....就是shell中的$1,$2.....

sys.argv也支持python字符串中的切片,我们还是先修改代码

示例1:

1 #conding:utf-82 import sys #导入sys模块3 print(sys.argv[1:]) # 打印sys.argv的第1个参数及其以后所有参数,返回的值是一个list

结果如下:

$ python3.6 1234.py a b c d e f ['a', 'b', 'c', 'd', 'e', 'f']

示例2:

1 #conding:utf-82 import sys #导入sys模块3 print(sys.argv[1:3]) # 打印sys.argv的第1个参数到第三个参数,不包含第三个参数,返回的值是一个list

结果如下:

1 $ python3.6 1234.py a b c d e f 2 ['a', 'b']

示例3:

#conding:utf-8import sys #导入sys模块print(sys.argv[1:5:2])print(sys.argv[-1])print(sys.argv[::-1])

结果如下

1 $ python3.6 1234.py a b c d e f 2 ['a', 'c']3 f4 ['f', 'e', 'd', 'c', 'b', 'a', '1234.py']

上面示例使用了字符串的切片方法,需要先了解字符串的切片知识.

通过如上示例,应该明白sys.argv的使用和暂时的结果.

sys.argv就是将程序本身和给程序参数返回一个list,这个list中的索引为0的就是程序本身.因此里面的给sys.argv的参数就是list索引.

这个函数是我们写python脚本中最常用的一个函数.

转载于:https://www.cnblogs.com/jeavy/p/9498095.html

你可能感兴趣的文章
095、如何创建Swarm集群?(Swarm02)
查看>>
结对开发地铁
查看>>
附加题
查看>>
this kernel requires an x86-64 cpu,but only detected an i686 cpu
查看>>
extjs4学习-02-导入相关文件
查看>>
python generator iterator和iterable object
查看>>
求二维数组中最大子数组的和
查看>>
SaltStack
查看>>
1. 构建您的第一个应用
查看>>
适配器模式(Adapter)
查看>>
FastStone Capture无法录制系统声音解决方法(win10)
查看>>
wamp 软件 rewrite伪静态支持
查看>>
tcp协议
查看>>
frond end 找工作 随笔
查看>>
Sql Server系列:规范化及基本设计
查看>>
sql server 复制表从一个数据库到另一个数据库
查看>>
vhd镜像格式及vhd-util工具应用
查看>>
指针数组与数组指针
查看>>
macos下命令行通过ndk编译android下可以执行的ELF程序(并验证opencl的调用)
查看>>
深入理解Lustre文件系统-第6篇 OST和obdfilter
查看>>