Python函数在与int比较时总是返回false

2024-10-01 11:36:49 发布

您现在位置:Python中文网/ 问答频道 /正文

from pip.backwardcompat import raw_input
from PFD import *


def getInput():
    try:
        n = raw_input("Please enter the file size: ")
        int(n)
        print(str(n))
        order = raw_input("Please enter a Fib Order [3/4]: ")
        int(order)
    except ValueError:
        getInput()

    if order == 3:
        Fib.three(n)
    elif order == 4:
        Fib.four(n)
    else:
        print("You did something wrong, idiot.")
        getInput()


getInput();

所以这就是问题所在。不管我做什么,它都告诉我做错了什么,说我是白痴。:(


Tags: pipfromimportinputrawdeforderint
2条回答

在python中,整数是不可变的。因此,当您执行int(n)操作时,它不会就地更改变量的类型。您必须执行n = int(n),或围绕raw_input(...调用int()。你知道吗

这对于order也是一样的

你的台词

int(order)

需要重新分配给order变量,如下所示:

order = int(order)

编辑:正如alKid所指出的,n:

n = int(n)

相关问题 更多 >