我的代码不起作用,无法检查一个数字是否为回文
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
试试这个方法:
- 先用str()函数把数字转换成字符串格式。
- 然后用字符串切片的方法把这个字符串反转过来。
- 最后,检查反转后的字符串是否和原来的字符串一样。
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")