如何在python3中将字符串传递给函数参数

时间:2019-02-26 18:09:22

标签: python-3.x command-line-interface argparse

我正在使用argparse库构建命令行界面来解析用户输入。在一个阶段,我想接受诸如"'test', x=False"之类的用户输入,并将其用于诸如func('test', x=False)之类的功能中。

我尝试使用ast.literal_eval来执行此操作,但是它在等号处遇到语法错误。 (我做过ast.literal_eval("("+args+")"),其中args在示例上方)

有人知道这样解析用户输入的安全方法吗?最好不要使用eval,尽管在最坏的情况下我也可以使用eval,它是一个CLI工具。

编辑(对于那些据说手动使用输入的人():我需要工具来解析命令运行时的输入(这是一个python模块,我希望能够像python3 -m hmcli.raw --args "'test', x=False"那样被调用args可以灵活使用,因为所使用的功能可以有所不同。

0 个答案:

没有答案