接受命令行参数作为数字

时间:2018-02-08 21:22:01

标签: python

我需要接受所有参数作为数组。

#!/usr/bin/env python

import sys
value = sys.argv[1:]
print value

运行时,我得到了这个

$ python a.py 23 4 3 4
['23', '4', '3', '4']

我想得到的是:

 [23, 4, 3, 4]

怎么做?感谢。

1 个答案:

答案 0 :(得分:1)

您应该将每个参数转换为int。但是,如果参数不可解析,它可能会抛出异常。试试这个:

import sys

args = sys.argv[1:]

parsed_args = []

for a in args:
    try:
        parsed_args.append(int(a))
    except ValueError:
        print 'Not able to parse %s to int' % a

print parsed_args

这样就可以处理参数,以防它们不可解析并且运行稳定。

相关问题