内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用
import argparse parser = argparse.ArgumentParser() parser.add_argument("-g", "--games", type=int, default=162, help="The number of games to simulate") args = parser.parse_args()
输出:
python simulate_many.py -g 20 Setting up... Playing games... ....................
结果返回为负值:
python simulate_many.py -g -2 Setting up... Playing games...
我可以添加一个if来查看 args.games
是负的,以便利用自动使用打印。
理想情况下,它将打印类似于此的内容:
python simulate_many.py -g a usage: simulate_many.py [-h] [-g GAMES] [-d] [-l LEAGUE] simulate_many.py: error: argument -g/--games: invalid int value: 'a'
就像这样:
python simulate_many.py -g -2 usage: simulate_many.py [-h] [-g GAMES] [-d] [-l LEAGUE] simulate_many.py: error: argument -g/--games: invalid positive int value: '-2'
自己找到的答案:
if args.games <= 0: parser.print_help() print "-g/--games: must be positive." sys.exit(1)