Argparse จัดการ invalid arguments เองโดย default (exit พร้อม usage message)
ตัวอย่าง
# foo.py
import argparse
class InvalidArgError(Exception):
pass
parser = argparse.ArgumentParser()
parser.add_argument("echo")
args = parser.parse_args()
try:
print(args.echo)
raise InvalidArgError
except InvalidArgError as e:
print(e)
รัน: $ python foo.py echo bar
usage: foo.py [-h] echo foo.py: error: unrecognized arguments: bar
Argparse จะ error ก่อนถึงโค้ดของเรา