除了修改argparse源代码外,如果parse_args()在调用时遇到问题,有没有办法控制退出状态代码,例如,缺少必需的开关?
我不认为这是可能的,但我想自己处理来自argparse的异常.
例如:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--foo', help='foo help', required=True)
try:
args = parser.parse_args()
except:
do_something()
Run Code Online (Sandbox Code Playgroud)
当我运行它:
$ myapp.py
usage: myapp --foo foo
myapp: error: argument --foo is required
Run Code Online (Sandbox Code Playgroud)
但我希望它落入例外.