我想使用argparse取一些(3)整数参数,并将它们用作程序体中的变量。运行下面的代码,每个变量都存储在一个元素列表中。这当然不是什么大问题,但是可以设置解析器来将每个值放入一个简单的整数变量中吗?可以argparse存储位置数参数作为简单的变量?
import argparse
def main():
parser = argparse.ArgumentParser(description='three positional integer arguments.')
parser.add_argument('picks', type=int, nargs='+', default=10,
help='number of selections per execution')
parser.add_argument('minchunk', type=int, nargs='+', default=2,
help='min chunk size')
parser.add_argument('maxchunk', type=int, nargs='+', default=8,
help='max chunk size')
args = parser.parse_args(['1', '2', '3'])
print args
return 0
如果你这样做,你突然得到完全不同和不兼容的类型取决于有多少数字传递。如果你想支持多个值,只需要使用一个列表。 – delnan