在Idle中使用python3.4。为什么我会收到这个错误消息。。。你知道吗
ValueError: invalid literal for int() with base 10: '4 4'
将输入语句转换为整数时。我正在尝试将int
放在我的输入语句中,而不是使用
num1 = int(num1)
num2 = int(num2)
第一种方法行得通,但为什么第二种方法不行呢?如果我运行以下代码,第二种方法将起作用:
number = int(input("Number?"))
print(number)
那为什么不能用第二种方法呢?你知道吗
第一种方式有效:
#Ask the user to input 2 values and store them in variables num1 num2
num1, num2 = input("Enter 2 numbers: ").split()
#Convert the strings into regular numbers Integer
num1 = int(num1)
num2 = int(num2)
# Type problems and store in a variable
sum = num1 + num2
difference = num1 - num2
product = num1 * num2
quotient = num1 / num2
remainder = num1 % num2
print("{} + {} = {}".format(num1,num2,sum))
print("{} - {} = {}".format(num1,num2,difference))
print("{} * {} = {}".format(num1,num2,product))
print("{} / {} = {}".format(num1,num2,quotient))
print("{} % {} = {}".format(num1,num2,remainder))
这样不行。我写这段代码只是为了说明我做了什么不同。除了此行和将字符串转换为整数(num=int)的另一种方法外,其余代码都是相同的。你知道吗
第二路:
num1, num2 = int(input("Enter 2 numbers: ")).split()
第二种方法是尝试将
4 4
转换为int
,但它无法做到,您需要将int
作为字符串应用于每个数字,这样您的代码就变成:另一方面—稍后调用变量
sum
就是在隐藏内置变量sum
,这可能会进一步导致问题—我通常使用total
。他说您还可以使用
operator
模块中的函数来简化:输入
4 4
将给出:相关问题 更多 >
编程相关推荐