有些小工具不想一报错就直接退出,自己包一层提示会顺一点。
环境:Python 3.9+,只用标准库。
import argparse
parser = argparse.ArgumentParser(exit_on_error=False)
parser.add_argument('--count', type=int)
try:
ns = parser.parse_args(['--count', 'abc'])
print(ns.count)
except argparse.ArgumentError as e:
print('参数不对:', e)
这种比默认直接吐一大段退出信息更好接。