如何解决如何使用argparse将异常参数传递给Python脚本
我尝试使用Python的argparse模块。我有一个特殊要求,我要传递给我的Python脚本的参数应具有以下性质:
-
两个具有相同名称的参数,一个将以“ +”号开头,另一个以“-”号开头。每个脚本都有不同的意义和不同的处理方式。例如(+ p和-p),如下所示:
myscript + p音乐,音频-p应用
-
一个参数,它将以'-'开头的其他参数作为其值,其结尾将以一种单独的方式表示,如下所示:
myscript -info -name andrew -place newyork -info-
在上面的示例中-info的值可以为'-name andrew -place newyork',-info-表示其值的结尾。
我试图用argparse实现它,但是没有成功。仅使用sys.argv,我就可以通过它们。关于如何使用argparse实现此目标的任何帮助都会很棒。
谢谢。
解决方法
两个同名参数,一个以'+'开头,另一个 带有“-”号。每个将具有不同的意义并且分别 在脚本内部处理。例如(+ p和-p),如下所示:
myscript + p音乐,音频-p应用
只需在调用prefix_chars='-+'
时设置argparse.ArgumentParser
,就可以为+ p和-p添加带有ArgumentParser.add_argument()
的单独参数。 here文档对此进行了说明。
第二个虽然可以完成,但我认为这对于用户而言会有些复杂和混乱。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。