python argparse模块

argparse 模块是用来让 python 程序接收来自命令行的参数的

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--phase', default='test', help='train or test [default: test]')
parser.add_argument('--gan', default='False', action='store_true')

FLAGS = parser.parse_args()
phase = FLAGS.phase
gan = FLAGS.gan

print(phase, gan)
python ./xx.py --phase train --gan

>>> train True

其中对于True/False类型的参数,为了简单起见,使用参数 action='store_false'action='store_true' 来实现
action='store_true'代表着一旦使用这个参数,就做出动作“将其值标为True”,也就是没有时,默认状态下其值为False;action='store_false' 也就是默认为True,一旦命令中有此参数,其值则变为False。

parser = argparse.ArgumentParser()
parser.add_argument('--foo', action='store_true')
parser.add_argument('--bar', action='store_false')

如上所述,若命令行中使用python test.py --foo,则--foo参数在命令中存在,则被置为True;而--bar参数在命令中不存在,则保持默认,同样为True。

posted @ 2020-12-17 15:58  ilk012  阅读(12)  评论(0编辑  收藏  举报