对python判断是否回文数的实例详解

设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。

上面的解释就是说回文数和逆序后的结果是相等的。这就是判断一个数值是否是回文数的标准。

代码也是根据这个思路来实现的。

# -*- coding: utf-8 -*-
"""
Created on Sun Aug 5 09:01:38 2018
@author: FanXiaoLei
"""
#判断回文数
def hw(n):
  p=n
  k=0
  while p!=0:
    k=k*10+p%10
    p=p//10
  if k==n:
    return True
  else:
    return False
print(hw(121))
print(hw(13451))

结果如下:

对python判断是否回文数的实例详解

当然我们可以利用python里面的reversed函数逆序。这样会简洁很多。

代码如下:

# -*- coding: utf-8 -*-
"""
Created on Mon Aug 6 07:03:59 2018
@author: FanXiaoLei
"""
def hw(n):
  p=str(n)
  k=''.join(reversed(p))
  if k== p:
    return True
  else:
    return False
print(hw(121))
print(hw(1234531))

结果如图:

对python判断是否回文数的实例详解

相关推荐