如何从Bash运行参数时将参数传递给python脚本?
python somepythonfile.py arg1 arg2
答案 0 :(得分:1)
你究竟是怎样的。您可以通过sys.argv
#!/usr/bin/python
import sys
print 'Number of arguments:', len(sys.argv), 'arguments.'
print 'Argument List:', str(sys.argv)
输出:
Number of arguments: 3 arguments
Argument List: ['somepythonfile.py', 'arg1', 'arg2']
sys.argv[0]
)是脚本的名称sys.argv[1]
... sys.argv[N]
)是传递的参数无耻地从this example获取。
答案 1 :(得分:1)
使用sys.argv,它是一个包含传递给脚本的参数以及文件名的列表。
# test_prog.py
from sys import argv
print argv[0] # test_prog.py
if len(argv) > 1: # check that we have at least 1 argument
print argv[1]
答案 2 :(得分:1)
正如其他人所说,您可以通过sys.argv
对于更复杂的参数处理,如果创建命令行脚本,您可能需要查看argparse模块:
https://docs.python.org/2/library/argparse.html#module-argparse
(来自文档...)
例如,考虑一个名为myprogram.py
的文件,其代码如下:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--foo', help='foo help')
args = parser.parse_args()
从命令行:
$ python myprogram.py --help
usage: myprogram.py [-h] [--foo FOO]
optional arguments:
-h, --help show this help message and exit
--foo FOO foo help