> 文档中心 > ValueError: invalid literal for int() with base 10: ‘ ‘

ValueError: invalid literal for int() with base 10: ‘ ‘

当遇到这样的问题我们可以采用eval函数来解决:

例如:

str=list(input().split())n=len(str)print(n)a=0y=1for i in range(n):    z=int(str[i])    y=z*yprint(y)

在这一个简单的求累乘的代码中,我们的输入是:

1,2,3,4,5,6,7,8,9,10

报错

ValueError: invalid literal for int() with base 10: ' '

改正之后:

str=list(eval(input()))n=len(str)print(n)a=0y=1for i in range(n):    z=int(str[i])    y=z*yprint(y)

正常运行。