我试图在python中调用函数时通过提示传递的参数列表循环我希望将sys.argv [1]作为整数而不是字符串
这是我在函数
中编写的代码x=[1,2,3,4,5]
for n in x:
print sys.argv[1] * n
如果我用5接收
来调用上一个功能 5
55
555
5555
55555
我怎么才能收到
5
25
125
625
任何想法可能是什么解决方案
答案 0 :(得分:2)
import sys
x=[1,2,3,45]
try:
for n in x:
print int(sys.argv[1]) * n
except IndexError:
print "No argument were passed to the program"
<强>输出:强>
答案 1 :(得分:1)
只需这样做
x=[1,2,3,45]
for n in x:
print int(sys.argv[1]) * n
但是要小心,如果你传递的任何东西都不能被投射到一个字符串中或者你没有传递任何东西,这个解决方案就会爆炸。因此,您可能希望通过try
和except
块捕获任何异常。