Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我试图完成回文检查,但反向变量没有预期值_Python - Fatal编程技术网

Python 我试图完成回文检查,但反向变量没有预期值

Python 我试图完成回文检查,但反向变量没有预期值,python,Python,下面的代码应该检查用户提供的数字是否为回文,但是while循环reverse中的代码始终不等于该数字,即使我输入12321作为值 number=input("Type the number:") temp=number reverse=0 reminder=0 while temp!=0 : reminder=int(temp)%10 reverse=reverse*10+reminder temp=int(temp)/10 if reverse

下面的代码应该检查用户提供的数字是否为回文,但是while循环reverse中的代码始终不等于该数字,即使我输入12321作为值

number=input("Type the number:")

temp=number
reverse=0
reminder=0

while temp!=0 :
      reminder=int(temp)%10
      reverse=reverse*10+reminder
      temp=int(temp)/10    

if reverse==number :
      print("this is a palindrome number")
else:
      print("this is not a palindrome number")

下面的代码应该可以工作。输入的任何输入都始终是字符串。将结果与输入的数字进行比较时,将其转换为int。同时进行楼层划分//

number = input("Type the number:")


temp = int(number)
reverse = 0
reminder = 0

while temp != 0:
    reminder = temp % 10
    reverse = reverse*10+reminder
    print(reverse)
    temp = temp//10

if reverse == int(number):
    print("this is a palindrome number")
else:
    print("this is not a palindrome number")

如果你想要一个比所有分割的东西都好一点的解决方案。那么下面的代码应该可以工作了

number = input("Type the number:")

if number.isdigit():
    if number == number[::-1]:
        print('this is a palindrome number')
    else:
        print('this is not a palindrome number')
else:
    print('Input entered is not a number')


您可以通过一些小技巧来解决这个问题:数字的字符串表示和使用负索引进行迭代:

def is_palindrome(num):
    string = str(num)
    for i, e in enumerate(string):
        if e != string[-1 * (i+1)]:
            return False
    return True

is_palindrome(12344321)
真的

对于楼层划分,使用//

答:任何计算为数值类型的表达式

B:任何计算为数值类型的表达式

返回值:

根据强制规则

备注:

也称为整数除法。结果值是一个整体 整数,尽管结果的类型不一定是int

例如:

注:

在Python3.0中,5/2将返回2.5,5//2将返回2。这个 前者是浮点除法,后者是floor除法, 有时也称为整数除法

在Python2.2或更高版本的2.x行中,对于 整数,除非执行将来的导入除法 使Python2.x采用3.0的行为

无论将来如何导入,5.0//2都将返回2.0,因为这是 操作的楼层划分结果


我会为临时工换线 温度=初始温度/10
我还想问,如果一个数字是回文的,这是否是在python中检查该数字的另一种方法

number = input("Type the number:")
temp = str(number)
reverse = temp[::-1]

if reverse == temp :
    print("this is a palindrome number")
else:
    print("this is not a palindrome number")
A // B
>>> 5.0 / 2
2.5
>>> 5.0 // 2
2.0
number = input("Type the number:")
temp = str(number)
reverse = temp[::-1]

if reverse == temp :
    print("this is a palindrome number")
else:
    print("this is not a palindrome number")