参数分为位置参数(必须),关键词参数(可选)。
关键词参数开头必须是-或者–,后面名称可以随便填。可以填很多个,但是变量名是第一个。如果没传入,返回None
位置参数是必须的,除了关键词参数与值外,其他的值与位置参数一一对应。
import argparse
parser = argparse.ArgumentParser(description='argparse learning')
parser.add_argument('-foo', '--weid')
args = parser.parse_args(['--foo', 'f00','--weid','f01']) # 如果多次传入,则以最后一个传入值为准。
args.__dict__ # {'foo': 'f01'}
args.foo # 'f01'
import argparse
parser = argparse.ArgumentParser(description='argparse learning')
parser.add_argument('b')
parser.add_argument('bar')
args = parser.parse_args(['a', 'b'])
args.b # 'a'
args.bar # 'b'
利用action参数
import argparse
parser = argparse.ArgumentParser(description='argparse learning')
parser.add_argument('-c', action='store_false')
parser.add_argument('-d', action='store_true')
args = parser.parse_args(['-c', '-d'])
args.c # False
args.d # True