【发布时间】:2013-02-26 16:38:53
【问题描述】:
我使用 optparse 来解析我的脚本的命令选项。 我有 -f 和 -c 选项,它们都需要一个选项参数。但是当它丢失时,它会将下一个选项视为当前选项的选项参数。 例如
./myScript -f -c
这会将“-c”视为“-f”的选项参数,而不是抱怨“-f”和“-c”缺少选项参数。 对于其他正常情况,它工作正常。
感谢您提供任何信息和解决方案!
更新: 解决方案,通过使用argparse,可以避免这个问题。它退出并抱怨缺少选项参数。
【问题讨论】:
-
您不使用
argparse是否有特定原因?如果你使用actionkwarg,我相信argparse会做你想做的事;像这样:parser.add_argument('-f',action='store_true') -
无任何特殊原因。我只是首先找到 optparse 。我刚刚尝试了 argparse,以这种方式使用选项时会显示错误。谢谢!
-
注意:自 python 2.7 版起,不鼓励使用 optparse。 optparse 模块已弃用,不会进一步开发; argparse 模块将继续开发。请参阅PEP 0389 了解更多信息。