我的代码不起作用,无法检查一个数字是否为回文

-1 投票
3 回答
57 浏览
提问于 2025-04-12 08:08
var1 = int(input("enter a number:"))
num = str(var1)[::-1]

if var1 == num:
    print("its a palindrome")
else:
    print("its not a palindrome")

输入一个数字:121 ---> 期待的结果是“这是一个回文数”

结果是“这不是一个回文数”

输入一个数字:123

结果是“这不是一个回文数”

为什么在第一个例子中代码没有正常工作呢?

3 个回答

0

在比较的时候,把 var1 转换成字符串:

var1 = int(input("enter a number:"))
num = str(var1)[::-1]

if str(var1) == num:
    print("its a palindrome")
else:
    print("its not a palindrome")
0

试试这个方法:

  1. 先用str()函数把数字转换成字符串格式。
  2. 然后用字符串切片的方法把这个字符串反转过来。
  3. 最后,检查反转后的字符串是否和原来的字符串一样。
num = int(input("Enter number : " ))
reverse = int(str(num)[::-1])

if num == reverse:
   print("Palindrome")
else:
   print("Not Palindrome")
0

因为变量的类型不一样:

var1 = int(input("enter a number:"))
num = str(var1)[::-1]
var2 = int(num)

if var1 == var2:
    print("its a palindrome")
else:
    print("its not a palindrome")

你需要把它转换成整数类型,或者:

var1 = input("enter a number:")
var2 = var1[::-1]
if var1 == var2:
    print("its a palindrome")
else:
    print("its not a palindrome")

撰写回答