我的“if语句”无效

时间:2016-02-10 23:08:31

标签: python if-statement

def main():
    while True:
        operation = raw_input('Choose an operation: ')

        if operation == 1:
            number_1 = int(raw_input("What is the first number you want to subtract? "))
            number_2 = int(raw_input("What do you want to subtract from it? "))
            sum = number_1 - number_2
            print('The answer is...')
            print(sum)
            break

        if operation == 2:
            number_1 = int(raw_input("What is the first number you want to subtract? "))
            number_2 = int(raw_input("What do you want to subtract from it? "))
            sum = number_1 - number_2
            print('The answer is...')
            print(sum)
            break

        if operation == 3:
            number_1 = int(raw_input("What is the first number you want to subtract? "))
            number_2 = int(raw_input("What do you want to subtract from it? "))
            sum = number_1 - number_2
            print('The answer is...')
            print(sum)
            break

        if operation == 4:
            number_1 = int(raw_input("What is the first number you want to subtract? "))
            number_2 = int(raw_input("What do you want to subtract from it? "))
            sum = number_1 - number_2
            print('The answer is...')
            print(sum)
            break

        else:
            print('Invalid operation')
            break
main()

当我尝试输入数字时,它无法识别它并打印无效操作

4 个答案:

答案 0 :(得分:2)

您必须将输入转换为int()的整数:

operation = int(raw_input('Choose an operation: '))

答案 1 :(得分:0)

将if语句设置为:

if int(operation) == 1

if operation == str(1)

答案 2 :(得分:0)

你必须比较字符串:

if operation == "1":

答案 3 :(得分:0)

如果你检查,

操作需要是一个int 针对你的if语句的int。

operation = raw_input('Choose an operation: ')

应该是

operation = int(raw_input('Choose an operation: '))

作为旁注,请务必在询问之前校对您的代码。 :)