将命令行参数传递给python脚本

时间:2018-05-05 19:07:20

标签: python command arguments

我有一个file.py,我希望在调用时将其传递给base_url,以便在base_url运行python file.py base_url='http://google.com' http://google.comfunction isArray(input) { if (input instanceof Array || Object.prototype.toString.call(input) === '[object Array]') { return true; } else return false; } 变量值是动态的然后可以直接用于执行file.py。

我该怎么做呢?

由于

2 个答案:

答案 0 :(得分:1)

命令行参数存储在列表sys.argv中。 sys.argv[0]是被调用的命令的名称。

import sys

if len(sys.argv) != 2:
    sys.stderr.write("usage: {} base_url".format(sys.argv[0]))
    exit(-1) # or deal with this case in another way
base_url_arg = sys.argv[1]

根据输入格式,可能需要进一步处理base_url_arg

答案 1 :(得分:0)

sys.argv

How to use sys.argv in Python

对于解析作为"name=value"字符串传递的参数,您可以执行以下操作:

import sys

args = {}
for pair in sys.argv[1:]:
    args.__setitem__(*((pair.split('=', 1) + [''])[:2]))

# access args['base_url'] here

如果您想要更详细地解析命令行选项,请使用argparse

Here是关于argparse的教程。