Python中的sys.argv是什么含义

sys.argv是一个从【程序外部】获取参数的桥梁,从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,可以用[0]、[1]、[2]、[3]…等提取其中的元素。第一个元素(sys.argv[0])是程序本身,随后才依次是外部给予的参数。

下面通过一个程序的运行结果来说明sys.argv的用法:

首先,将下面的代码保存在一个名为test.py的文件中:

# test.py

import sys
a = sys.argv[0]
print(a)

将文件test.py保存在系统D盘的根目录下。

按Win键+R,输入’cmd‘,打开Windows命令行,使用‘d:’命令将路径切换到D盘根目录,在命令行中输入‘python tesy.py’,得到的结果如下:

在这里插入图片描述

得到的是test.py,也就是说sys.argv[0]是程序本身的意思。

再试试。

用记事本打开D盘的test.py文件,将a = sys.argv[0]改为 a = sys.argv[1],保存后,在命令行中输入python test.py naruto(即多了naruto参数),运行结果如下:

在这里插入图片描述
输出结果为naruto,即sys.argv[1]是程序外输入的第一个参数。

再试试。

用记事本打开D盘的test.py文件,将a = sys.argv[1]改为 a = sys.argv[2:],保存后,在命令行中输入python test.py naruto sasuke sakura kakashi(即多了naruto, sasuke, sakura, kakashi参数,各参数用空格隔开),运行结果如下:

在这里插入图片描述
得到的结果是一个列表——[‘sasuke’, ‘sakura’, ‘kakashi’]

sys.argv其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非内部代码本身的什么地方。要想看到它的效果,就应该将程序保存了,从外部来运行程序并给出参数。

你可能感兴趣的:(Python,python,sys,argv,sys.argv)