Python实现判断一个整数是否为回文数算法示例

yipeiwu_com6年前Python基础

本文实例讲述了Python实现判断一个整数是否为回文数算法。分享给大家供大家参考,具体如下:

第一个思路是先将整数转换为字符串,再将字符串翻转并与原字符串做比较

def isPalindrome(self, x):
    """
    :type x: int
    :rtype: bool
    """
    #思路:先将整数转换为字符串,再将字符串翻转并与原字符串做比较
    x = str(x)
    return x == x[::-1]

代码简洁

第二个思路,尝试着不用字符串,将整数直接拆除一个数组,再比较这个数组是否“对称”

def isPalindrome(self, x):
    """
    :type x: int
    :rtype: bool
    """
    #思路二:将数字转换成数组
    #负数肯定不是回文数
    if x < 0 :
      return False
    elif x <= 9:
      return True
    else:
      nums = []
      while x >= 10 :
        mod = x % 10
        nums.append(mod)
        x = x/10
      nums.append(x)
      print "nums:",nums
      for i in range(0,len(nums)/2):
        if nums[i] != nums[-1-i]:
          return False
      return True

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

用Python写一个无界面的2048小游戏

用Python写一个无界面的2048小游戏

以前游戏2048火的时候,正好用其他的语言编写了一个,现在学习python,正好想起来,便决定用python写一个2048,由于没学过python里面的界面编程,所以写了一个极其简单的无...

python多线程编程方式分析示例详解

在Python多线程中如何创建一个线程对象如果你要创建一个线程对象,很简单,只要你的类继承threading.Thread,然后在__init__里首先调用threading.Threa...

Python实现的计算马氏距离算法示例

Python实现的计算马氏距离算法示例

本文实例讲述了Python实现的计算马氏距离算法。分享给大家供大家参考,具体如下: 我给写成函数调用了 python实现马氏距离源代码: # encoding: utf-8 fro...

Python单元测试框架unittest使用方法讲解

概述 1.测试脚手架(test fixture) 测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown(). 2.测试案例(test case) 最小的测试...

Python 编码处理-str与Unicode的区别

一篇关于STR和UNICODE的好文章 整理下python编码相关的内容 注意: 以下讨论为Python2.x版本, Py3k的待尝试 开始 用python处理中文时,读取文件或消息,h...