Nie sądzę, że jest to możliwe, ale chcę obsługiwać wyjątki od argparse siebie.Chcę Python argparse rzucić wyjątek, a nie użycie
Na przykład:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--foo', help='foo help', required=True)
try:
args = parser.parse_args()
except:
do_something()
Kiedy uruchamiam go:
$ myapp.py
usage: myapp --foo foo
myapp: error: argument --foo is required
Ale chcę wpaść wyjątkiem zamiast.
Nie używasz argparse do tego, do czego został zaprojektowany. Co chcesz robić? –
Nie jest źle zmienić sposób, w jaki działa wspaniała biblioteka, tylko po to, aby dostroić ją do konkretnego projektu. – jdborg
Właściwie możesz to już zrobić. po prostu złap 'SystemExit' i zamień' sys.stderr' na jakiś inny obiekt. – Bakuriu