Python中 sys.argv[]解释及用法(python 脚本参数传递运行)

argv:网路解=释义( 参数,命令行,参数排列命令行,参数命令行变元数组)
sys.argv[0]表示代码本身文件名称”仅仅是一种结果的表现,其sys.argv的真正用法是什么,接下来用个小的demo来解释下:
在linux环境下,打开终端,touch一个aaa.py执行脚本。
用vim编辑器进入到执行脚本中,接下来咱们写几行代码,如下:

  1 import sys
  2 
  3 a = sys.argv                                                                                          
  4 print a

保存退出,执行python aaa,py。结果如下:
在这里插入图片描述
可以看出,打印出来的结果是在列表中以字符串形式存在的文件名,那么改改代码,我们再看看:

  1 import sys
  2 
  3 a = sys.argv[0]                                                                                       
  4 print a

执行结果:
在这里插入图片描述
此时取出的就是单独的执行文件名。那么我们再执行一下python aaa.py hello,看看结果怎么样:
在这里插入图片描述
跟刚刚执行结果没什么关系。如果我们把 argv[0] 改成argv[1]会怎么样:

  1 import sys
  2 
  3 a = sys.argv[1]                                                                                       
  4 print a

执行结果:
在这里插入图片描述
此时看到,这次打印的不再是我们的文件名称了,而是我们文件名后面跟的一些参数。再换个方式,将代码再改改:

  1 import sys
  2 
  3 a = sys.argv[3: ]                                                                                     
  4 print a

执行:python aaa.py 1 2 3 4 5 6 7 8 9 0
结果:在这里插入图片描述

import sys

def test(argv):
    print argv[1]
    print argv[2]

if __name__ == '__main__':
    test(sys.argv)

启动方式: python abc.py 1 2 这样1,2 两个参数就会传递到argv[1], argv[2].因为 argv[0],是获取的脚本名称。
怎么样,这下明白了把。Sys.argv[ ]其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非代码本身的什么地方,要想看到它的效果就应该将程序保存了,从外部来运行程序并给出参数。我们用此方法获取文件名称或者外部传入参数通过列表操作进行筛选后使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值