使用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实现回文数的四种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python3实现的回文数判断及罗马数字转整数算法示例

    本文实例讲述了Python3实现的回文数判断及罗马数字转整数算法.分享给大家供大家参考,具体如下: 回文数 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 . 从右向左读, 为 121- .因此它不是一个回文数. 示例 3: 输入: 10 输出: false 解释: 从右向左读, 为 01 .因此它不是一个回文数. 进阶:你

  • 解决Python中回文数和质数的问题

    一.前言 今天学习视频时课后作业是找出1000以内既是素数又是回文数的数,写代码这个很容易,结果一运行遇到了bug,输出结果跟预期不一样,调试了快30min,再接着一通搜索和回看视频才发现问题所在.所以特地写下来,方便以后查看.问题的关键是判断素数过程中for-else的用法上(具体看后面代码) 二.实现判断素数的功能 质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数).via--Wikiped

  • python3中利用filter函数输出小于某个数的所有回文数实例

    我就废话不多说了,直接上代码吧! def _int_iter(): """根据回文数的定义.首先生成一个从0开始的整数无限序列""" n = 0 while True: yield n n += 1 def _is_palindrome(n): """判断n是否为回文数,是就返回Ture,否就返回False""" L1 = list(str(n)) L2 = L1[:] # 利用列表的切

  • 使用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 Expla

  • Python判断回文数的三种方法实例

    需求: 从控制台输入一个五位数,如果是回文数就打印"是回文数",否则打印"不是回文数",例如:11111 12321 12221 "回文"是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如"我为人人,人人为我"等.在数学中也有这样一类数字有这样的特征,成为回文数(palindrome number). 设n是一任意自然数.若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数.例如,若n=123

  • 利用Python判断整数是否是回文数的3种方法总结

    前言 所谓回文数,就是说一个数字从左边读和从右边读的结果是一模一样的,比如12321.本文通过三个方法详细介绍了判断的方法,下面来一起看看吧 方法一:逐位判断 原理: 用一个while循环,将一个数每次都取出首位和末位,判断是否相等,只要有一次不相等退出即可. 回文数的判断条件:加入一个变量位数,如果这个数是奇数,位数为1时,即最中间那一位数,此时退出即可,同理,偶数,位数为0时,退出. 问题: 如何判断位数 如何逐位取值 优点: 思路简单 解决: 判断位数下面程序即可 y=x weishu=0

  • Python计算回文数的方法

    本文实例讲述了Python计算回文数的方法.分享给大家供大家参考.具体如下: 这里检查数字是不是回文数,用196算法生成一个数字的回文数 num = 905; def is_Palindrome(num): """ 判断一个数字是不是回文数,这里有些取巧了 :param num: :return: """ """ :param num: :return: """ temp = "

  • Python实现"验证回文串"的几种方法

    一.LeetCode--125.验证回文串 1.问题描述 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 2.示例 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: True 示例 1: 输入: "race a car" 输出: False 示例 3: 输入: "!!!" 输出: True 二.解题分析 在排除空格及特殊

  • Python字典删除键值对和元素的四种方法(小结)

    目录 1.del删除字典本身 2.pop()删除字典键值对  3.popitem()删除字典键值对 4.clear()删除字典键值对:清空字典中的所有内容,但是不删除字典本身,del删除字典本身 在删除每个字典的时候有些方法和删除其他拥有独立内存的数据使用的方法是一样的,比如del,直接清空内存,clear()是值清除变量值.字典的删除我们从字典对象本身和字典中的键值对两个方面出发,来学习一下. 1.del删除字典本身 del就是从内存级别删除字典本身,让这个字典对象彻底消失.同时也可以删除字典

  • Python删除字符串中字符的四种方法示例代码

    目录 一.删除字符串两端的一种或多种字符 二.删除字符串中单个固定位置的字符 三.删除字符串中任意位置的一种或多种字符 四.同时删除字符串内的多种不同字符 一.删除字符串两端的一种或多种字符 #strip().lstrip().rstrip()方法:(默认删除空格符) A.list.strip(字符):删除字符串两端的一种或多种字符: 例:删除字符串s两端 a 或 b 或 c 字符: s = 'abbmmmcccbbb' s1 = s.strip('abc') print(s1) #输出:mmm

  • Python 获取windows桌面路径的5种方法小结

    这里介绍了5中python获取window桌面路径的方法,获取这个路径有什么用呢?一般是将程序生成的文档输出到桌面便于查看编辑. 前两个方法是通过注册表来获取当前windows桌面绝对路径,比较推荐使用第一个,因为不需要安装额外的扩展,其他的可以了解下 1.用内置的winreg(推荐) import _winreg def get_desktop(): key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER,r'Software\Microsoft\Win

  • python 字典中取值的两种方法小结

    如下所示: a={'name':'tony','sex':'male'} 获得name的值的方式有两种 print a['name'],type(a['name']) print a.get('name'),type(a.get('name')) 发现这两个结果完全一致,并没有任何的差异. 怎么选择这两个不同的字典取值方式呢? 如果字典已知,我们可以任选一个,而当我们不确定字典中是否存在某个键时,我之前的做法如下 if 'age' in a.keys(): print a['age'] 因为不先

随机推荐