如何在Python中访问命令行参数?

ぃ、小莉子 提交于 2020-03-21 15:58:29

3 月,跳不动了?>>>

我使用python来创建我的项目设置设置,但我需要帮助获取命令行参数。

我在终端试了这个:

$python myfile.py var1 var2 var3

在我的Python文件中,我想使用所有输入的变量。


#1楼

您可以使用sys.argv将参数作为列表获取。

如果您需要访问单个元素,则可以使用

sys.argv[i]  

其中i是索引, 0将为您提供正在执行的python文件名。 之后的任何索引都是传递的参数。


#2楼

Python代码:

import sys

# main
param_1= sys.argv[1] 
param_2= sys.argv[2] 
param_3= sys.argv[3]  
print 'Params=', param_1, param_2, param_3

调用:

$python myfile.py var1 var2 var3

输出:

Params= var1 var2 var3 

#3楼

如果你这样称它: $ python myfile.py var1 var2 var3

import sys

var1 = sys.argv[1]
var2 = sys.argv[2]
var3 = sys.argv[3]

与数组类似,您也有sys.argv[0] ,它始终是当前的工作目录。


#4楼

我能想到的其他一些事情。

正如@allsyed所说,sys.argv给出了一个组件列表(包括程序名称),所以如果你想知道通过命令行传递的元素数量,你可以使用len()来确定它。 基于此,如果用户未传递特定数量的参数,您可以设计异常/错误消息。

另外,如果您正在寻找更好的方法来处理命令行参数,我建议您查看https://docs.python.org/2/howto/argparse.html


#5楼

Python教程解释了它

import sys

print(sys.argv)

更具体地说,如果你运行python example.py one two three

>>> import sys
>>> print(sys.argv)
['example.py', 'one', 'two', 'three']
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!