我想知道这是否可能
a = 100
b = 200
c = 300
print(argv[1])
我想在argv[1] = a
时打印 a 的值,即当我从命令行以如下方式运行程序时
python test.py a
输出应为100
。
对于其他变量b
和c
也是如此。有可能吗?
答案 0 :(得分:1)
是的,可以。我不确定您是否应该,但是可以这样:
import sys
a = 100
b = 200
c = 300
print(globals()[sys.argv[1]])
答案 1 :(得分:0)
您可以使用字典来实现:
to_print = {
"a": 100,
"b": 200,
"c": 300
}
print(to_print.get(argv[1]))
答案 2 :(得分:0)
使用dict
:
d = {"a": 100, "b": 200, "c": 300}
print(d.get(argv[1]))
答案 3 :(得分:0)
使用字典:
values = {'a': 100, 'b': 200, 'c': 300}
print(values[argv[1]])
答案 4 :(得分:0)
您可以使用以下代码:
import sys
values = {'a': 100, 'b': 200, 'c': 300}
if __name__ == "__main__":
try:
print(values[sys.argv[1]])
except KeyError:
print("Provide correct arguments")