无法分配给函数调用,但代码似乎是正确的

时间:2016-09-15 18:41:13

标签: python python-3.x

我正在制作一个非常简单的计算器,因为我感到无聊,但由于某种原因它出错了“无法分配给函数调用”。 这是代码:

type=input("Please select a method.\n\n1.) Addition\n2.) Subtraction\n3.) Multiplication\n4.) Division\n\n")
if type == "1":
    int(number1)=input("First number?")
    int(number2)=input("Second number?")
    answer=number1+number2
    print ("The answer is " +answer +".")
if type == "2":
    int(number1)=input("First number?")
    int(number2)=input("Second number?")
    answer=number1-number2
    print ("The answer is " +answer +".")
if type == "3":
    int(number1)=input("First number?")
    int(number2)=input("Second number?")
    answer=number1*number2
    print ("The answer is " +answer +".")
if type == "4":
    int(number1)=input("First number?")
    int(number2)=input("Second number?")
    answer=number1/number2
    print ("The answer is " +answer +".")
else:
    print("Pick a number from 1-4")

我觉得这很明显,我只是个白痴。

2 个答案:

答案 0 :(得分:2)

您需要将输入字符串转换为int,而不是将其分配给的变量:

if type == "1":
    number1=int(input("First number?"))
    number2=int(input("Second number?"))
    answer=number1+number2

答案 1 :(得分:0)

您正在错误的时间将变量转换为int。您需要将给定的输入转换为整数,而不是在给出字符串值之前将变量转换为整数。

int(number1)=input("First number?")类似的所有实例都需要更改为number1 = int(input("First number?"))

这称为precedence