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

我在终端上试了一下:

$python myfile.py var1 var2 var3

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


当前回答

你可以使用sys。Argv以列表形式获取参数。

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

sys.argv[i]  

其中I是index, 0会给你正在执行的python文件名。之后的任何索引都是传递的参数。

其他回答

如果你像这样调用它:$ python myfile.py var1 var2 var3

import sys

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

与数组类似,还有sys。Argv[0],它总是当前工作目录。

Python教程解释它:

import sys

print(sys.argv)

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

>>> import sys
>>> print(sys.argv)
['example.py', 'one', 'two', 'three']

首先,您需要导入sys

sys -系统相关参数和功能

这个模块提供了对解释器使用和维护的某些变量的访问,以及对与解释器强交互的函数的访问。此模块仍然可用。我将编辑这篇文章,以防这个模块不再工作。

然后,你可以打印参数的数量或者你想要的,参数列表。

按照下面的脚本执行:

#!/usr/bin/python

import sys

print 'Number of arguments entered :' len(sys.argv)

print 'Your argument list :' str(sys.argv)

然后,运行python脚本:

$ python arguments_List.py chocolate milk hot_Chocolate

你会得到你想要的结果

Number of arguments entered : 4
Your argument list : ['arguments_List.py', 'chocolate', 'milk', 'hot_Chocolate']

希望这能帮到别人。

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 

应该使用sys(系统)模块。 参数具有STR类型,并且在数组中

注意:argv不是函数或类,它是变量,可以更改

注意:argv[0]为文件名

注意:因为python用c编写,c有main(int argc, char *argv[]);但是sys module中的argc不存在

注意:sys模块被命名为System,用C语言写的,不是一个基于SOURCE的模块

from sys import argv # or
from sys import * # or
import sys 

# code
print("is list") if type(sys.argv) == list else pass #  is list ,or
print("is list") if type(argv) == list else pass # is list
# arguments are str ( string )
print(type(sys.argv[1])) # str
# command : python filename.py 1 2 3
print(len(sys.argv)) # 3
print(sys.argv[1],'\n',sys.argv[2]'\n',sys.argv[3]) # following
'''
1
2
3
'''
# command : python filename.py 123
print(len(sys.argv)) # 1
print(sys.argv[1]) # following
'''
123
'''