Когда я ввожу ввод argparse Python, который ему не нравится, он вызывает SystemExit с кодом 2, который кажется, означает "Нет такого файла или каталога". Зачем использовать этот код ошибки?
import argparse
import errno
parser = argparse.ArgumentParser()
parser.add_argument('arg')
try:
parser.parse_args([])
except SystemExit as se:
print("Got error code {} which is {} in errno"
.format(se.code, errno.errorcode[se.code]))
производит этот вывод:
usage: se.py [-h] arg
se.py: error: too few arguments
Got error code 2 which is ENOENT in errno
errno
— это совершенно другой стандарт. - person Martijn Pieters   schedule 17.05.2014errno
кодах ошибок, не о том, почемуargparse
использует 2 в качестве кода выхода. Вы делаете ту же ошибку, что и ОП. - person Martijn Pieters   schedule 17.05.2014