题目链接:https://leetcode-cn.com/problems/palindrome-number/
回文数的题,大学不知道做了多少回了。这个题和翻转正数的题基本一样。
也是可以用字符串切片翻转的那个方法,或者取余除10的方法翻转.
经典的取余法:
= 1213
num = x
res = 0
if num < 0 :
print(False)
return False
else:
while num != 0:
res = res*10 + num%10
num //= 10
if x == res:
print(True)
return True
else:
print(False)
return False
使用python的语法 .切片翻转字符串
def bt(x):
if x<0 :
return False
else:
st = str(x)
st = st[::-1]
st = int(st)
if st == x:
return True
else:
return False
if __name__ == '__main__':
res = bt(12)
print(res)
我觉得这个方法对于没接触过C的小伙伴来讲,应该是比较简单且好理解的, st = st[::-1] 这就是字符串切片翻转.
ps: 切片语法: [起始下标:终止下标:步长]
[::-1] 起始下标和终止下标都不写 所以默认从头到尾,-1从最后一个开始,所以输出原字符串的倒叙结果.