Python的sys.argv使用说明
刚开始使用这个参数的时候,很不明白其含义.网上搜索很多都是贴的官网上面的一则实例,说看懂,就明白.可是,我看不懂.现在在回头看这个参数使用,并不是很麻烦.
举几个小例子就明白了.
创建一个脚本,内容如下
1 #conding:utf-8 2 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-8 2 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中的2.....
sys.argv也支持python字符串中的切片,我们还是先修改代码
示例1:
1 #conding:utf-8 2 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-8 2 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-8 import 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 f 4 ['f', 'e', 'd', 'c', 'b', 'a', '1234.py']
上面示例使用了字符串的切片方法,需要先了解字符串的切片知识.
通过如上示例,应该明白sys.argv的使用和暂时的结果.
sys.argv就是将程序本身和给程序参数返回一个list,这个list中的索引为0的就是程序本身.因此里面的给sys.argv的参数就是list索引.
这个函数是我们写python脚本中最常用的一个函数.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!