使用python实现回文数的四种方法小结

yipeiwu_com6年前Python基础

回文数就是指整数倒过来和原整数相等。

Example 1:
 
Input: 121
Output: true
Example 2:
 
Input: -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Example 3:
 
Input: 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.

1:整数转字符串,通过下标对比确定该整数是否为回文数

str_x = str(x)
for i in range(0,int(len(str_x)/2)):
  if str_x[i] != str_x[-i-1]:
    return False
return True

2:字符串切片操作,str[index:index:step],中括号里面分别为:字符起点、终点和步长

str_x = str(x)
return str_x == str_x[::-1]

3:数学计算的方法,对比反转整数的值

if x<0:
  return False
temp_x = x;
palindromeNum = 0
while temp_x != 0:
  palindromeNum = palindromeNum*10 + temp_x%10
  temp_x /= 10
return palindromeNum == x

4:整数转字符串,反转字符串,对比反转后字符串与原字符串是否相等

str_x = str(x)
str_y = ""
for i in str_x:
  str_y = i + str_y
return str_y == str_x

以上这篇使用python实现回文数的四种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python正则表达式实现截取成对括号的方法

本文实例讲述了Python正则表达式实现截取成对括号的方法。分享给大家供大家参考,具体如下: strs = '1(2(3(4(5(67)6)7)8)9)0' reg1 = re.co...

python 堆和优先队列的使用详解

1.heapq python里面的堆是通过在列表中维护堆的性质实现的。这一点与C++中heap一系列的算法类似,底层是通过堆vector的维护获取堆的性质。 关于二叉树 二叉树的...

python重试装饰器示例

利用python 写一些网络服务的时候,当网络状况不好,或者资源占用过多,任务拥塞的情况下,总会抛出一些异常,当前任务就被终止了,可以很好的利用@装饰器,写一个重试的装饰器,这样比较py...

python安装cx_Oracle模块常见问题与解决方法

本文实例讲述了python安装cx_Oracle模块常见问题与解决方法。分享给大家供大家参考,具体如下: 安装或使用cx_Oracle时,需要用到Oracel的链接库,如libclnts...

Django之模板层的实现代码

在例子视图中返回文本的方式有点特别,即HTML被直接硬编码在Python代码之中。 def current_datetime(request): now = datetime.d...