检查数字是否为回文
Checking if a number is palindrome
我有这个代码来检查一个数字是否是回文,出于某种原因它 returns false for number=1 即使它是回文。这是为什么?该代码适用于其他情况,例如 12321。
def palindrome_integer(number):
if number != int:
return False
elif str(number) == str(number)[::-1]:
return True
else:
return False
如果你想检查number
是否是整数,你应该使用isistance
。
def palindrome_integer(number):
if not isinstance(number, int):
return False
elif str(number) == str(number)[::-1]:
return True
else:
return False
您的其余代码似乎工作正常。
One-liner:
return isinstance(n, int) and str(n) == str(n)[::-1]
或者稍微做作一点:
import re
x = str(n)
return re.match(r”\d+“, x) and x == x[::-1]
def palindrome_integer(number):
return type(number) == int and str(number)[::-1] == str(number)
如果您在理解解决方案时遇到问题,请不要犹豫发表评论。
我有这个代码来检查一个数字是否是回文,出于某种原因它 returns false for number=1 即使它是回文。这是为什么?该代码适用于其他情况,例如 12321。
def palindrome_integer(number):
if number != int:
return False
elif str(number) == str(number)[::-1]:
return True
else:
return False
如果你想检查number
是否是整数,你应该使用isistance
。
def palindrome_integer(number):
if not isinstance(number, int):
return False
elif str(number) == str(number)[::-1]:
return True
else:
return False
您的其余代码似乎工作正常。
One-liner:
return isinstance(n, int) and str(n) == str(n)[::-1]
或者稍微做作一点:
import re
x = str(n)
return re.match(r”\d+“, x) and x == x[::-1]
def palindrome_integer(number):
return type(number) == int and str(number)[::-1] == str(number)
如果您在理解解决方案时遇到问题,请不要犹豫发表评论。