有三个版本的,
一、高配版,用到类,和math库
二、中配版,只有类,没有math库
三、最简版,无类无库
上代码:
一、高配版,用到类,和math库
#回文数,121,12321,58685,
import math
class Solution:
def isPalindrome(self,x):
o=x
y=0
while x>0:
r=x%10 #r是x的末位数
y=y*10+r #y是x的末位数,然后是末尾数进位+倒数第二位数
x=int(math.floor(x/10)) #x的末尾数直接去掉
return y==o #x的末尾数和输入值相等
#%%
s=Solution()
print(s.isPalindrome(x=121))
print(s.isPalindrome(x=1285821))
print(s.isPalindrome(x=12858231))
print(s.isPalindrome(x=231))
print(s.isPalindrome(x=132858231))
二、中配版,只有类,没有math库
class Solution:
def isPalindrome(self,x):
o=x
y=0
while x>0:
r=x%10 #r是x的末位数
y=y*10+r #y是x的末位数,然后是末尾数进位+倒数第二位数
x=int(x/10) #x的末尾数直接去掉
return y==o #x的末尾数和输入值相等
#%%
s=Solution()
print(s.isPalindrome(x=121))
print(s.isPalindrome(x=1285821))
print(s.isPalindrome(x=12858231))
print(s.isPalindrome(x=231))
print(s.isPalindrome(x=132858231))
三、最简版,无类无库
def isPalindrome(x):
o=x
y=0
while x>0:
r=x%10
y=y*10+r
x=int(x/10)
return y==o
#%%
print(isPalindrome(x=121))
print(isPalindrome(x=1285821))
print(isPalindrome(x=12858231))
print(isPalindrome(x=231))
print(isPalindrome(x=132858231))
出结果: