我从arg_parse获取一个字符串列表作为参数,如果很容易的话,我想将其中一些字符串转换为元组。
以下是我从argparse获得的列表:
['adding_light', '(shift_right_cv,shift_left_cv)']
我想知道如何将此'(shift_right_cv,shift_left_cv)'
转换为元组。
我不想使用eval
,因为这些字符串将由用户输入(argparse参数)。
不幸的是,ast.literal.eval()没有'工作 - 我得到
raise ValueError('malformed node or string: ' + repr(node))
ValueError: malformed node or string: <_ast.Name object at 0x00000000036A9BA8>
>>>
已尝试过这些主题的建议(不是复杂的):
如果没有简单的解决方案,我可能只是将元组变成一个列表 - 所以我将从argparse返回一个嵌套列表,看看是否更容易处理。 我也可以使用RE,但我担心正确覆盖所有情况(用户输入可能会破坏代码)。
谢谢。