如何在命令行中读取浮点数或整数?
test.py 11 22.4 11.7 99.9 69
我试过了:
numbersList = float(sys.argv[1:len(sys.argv)])
如何在命令行中读取浮点数或整数?
test.py 11 22.4 11.7 99.9 69
我试过了:
numbersList = float(sys.argv[1:len(sys.argv)])
import sys
args = map(float, sys.argv[1:])
或者,如果您更喜欢列表理解:
args = [float(x) for x in sys.argv[1:]]
更高级别的解决方案,argparse
而不是sys.argv
直接使用:
import argparse
p = argparse.ArgumentParser()
p.add_argument('values', nargs="*", type=float)
args = p.parse_args()
numbersList = args.values
要迭代您的列表,请尝试:
numbersList = [float(sys.argv[i]) for i in range(1, len(sys.argv))]
如果仅重要的是您将信息作为数字读取并且不需要区分整数和浮点数,您可以尝试这样的事情
import sys
print sum(map(float, sys.argv[1:]))