代码输出与回文函数中的预期不同

时间:2017-10-14 05:25:56

标签: python python-3.x palindrome

为什么我没有得到正确的输出?

这是我的代码:

def main():
    num = 111

    if (isPalindrome(num)):
        print ("Palindrome",num)
    else:
        print ("Not a palindrome", num)


def isPalindrome(num):
    temp = num
    revNum = 1

    while temp > 0:
        rightNum = temp%10
        revNum = revNum * 10 + rightNum
        temp = temp/10

    print (revNum)
    if revNum == num:
        return True
    else:
        return False

main()

输出:

inf
Not a palindrome 111

它应该返回true并打印Palindrome。我不明白为什么我没有得到输出。

1 个答案:

答案 0 :(得分:0)

Init
    revNum = 0

&安培;使用Floor division(//),normal division总是浮动

temp = temp//10

参考:https://www.programiz.com/python-programming/operators

尝试使用print语句进行调试以进行故障排除。