【发布时间】:2019-05-08 11:30:34
【问题描述】:
我知道我们可以使用 sys.argv,但我对此有疑问。
我想传递一个列表作为参数:
Example [5,1,6,[5,2]]
这是一个嵌套列表,我想按原样将其作为输入。
python myprogram.py [5,1,6,[5,2]]
这是我的程序:
import sys;
input_list = sys.argv[1].split(',')
print(input_list)
我确实获得了列表,但是如果我输出它,它在结构上是完全错误的:
['[5', '1', '6', '[5', '2]]']
如您所见,我将它替换为'[5',而不是input_list[0] == 5,我现在输入的嵌套列表也不再嵌套。而不是input_list[3] ==[5,2],input_list[3] is equal to '[5'。
我该怎么办?我需要按原样获取列表以便使用它。
【问题讨论】:
-
您可以
eval()它,但我更建议您查看argparse模块,看看是否可以帮助您。