Python中 sys.argv[]解释及用法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liuskyter/article/details/84323984

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
结果:在这里插入图片描述
怎么样,这下明白了把。Sys.argv[ ]其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非代码本身的什么地方,要想看到它的效果就应该将程序保存了,从外部来运行程序并给出参数。我们用此方法获取文件名称或者外部传入参数通过列表操作进行筛选后使用。

猜你喜欢

转载自blog.csdn.net/liuskyter/article/details/84323984