Python实现寻找回文数字过程解析


Posted in Python onJune 09, 2020

回文数字是很有意思的数字,不管从最高位开始念,还是从个位开始念,最终结果都一样,有一种对称美。

下面是回文数字的函数判断方式:

def is_palindrome(n):
  str_num = str(n)
  len_num = len(str_num)
  if len_num <= 2 and str_num[0] == str_num[-1]:
    return True
  else:
    half_len = round(len_num/2)
    for i in range(half_len):
      if not str_num[i] == str_num[-(i+1)]:
        return False
    return True

下面我们举个栗子,看3000以内有哪些回文数,以及有多少个这样的数字:

result = list(filter(is_palindrome, range(0, 3000)))
print(result, '\n', len(result))

输出如下:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44, 55, 66, 77, 88, 99, 101, 111, 121, 131, 141, 151, 161, 171, 181, 191, 202, 212, 222, 232, 242, 252, 262, 272, 282, 292, 303, 313, 323, 333, 343, 353, 363, 373, 383, 393, 404, 414, 424, 434, 444, 454, 464, 474, 484, 494, 505, 515, 525, 535, 545, 555, 565, 575, 585, 595, 606, 616, 626, 636, 646, 656, 666, 676, 686, 696, 707, 717, 727, 737, 747, 757, 767, 777, 787, 797, 808, 818, 828, 838, 848, 858, 868, 878, 888, 898, 909, 919, 929, 939, 949, 959, 969, 979, 989, 999, 1001, 1111, 1221, 1331, 1441, 1551, 1661, 1771, 1881, 1991, 2002, 2112, 2222, 2332, 2442, 2552, 2662, 2772, 2882, 2992]
129

可以看到3000以内的自然数中,有129个回文数。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python提取内容关键词的方法
Mar 16 Python
Python易忽视知识点小结
May 25 Python
Python 类的继承实例详解
Mar 25 Python
Python中 传递值 和 传递引用 的区别解析
Feb 22 Python
详解Python 数据库的Connection、Cursor两大对象
Jun 25 Python
把csv文件转化为数组及数组的切片方法
Jul 04 Python
Django中的forms组件实例详解
Nov 08 Python
用Python实现最速下降法求极值的方法
Jul 10 Python
Python 类,property属性(简化属性的操作),@property,property()用法示例
Oct 12 Python
用 Python 制作地球仪的方法
Apr 24 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
Dec 22 Python
Python实现Word文档转换Markdown的示例
Dec 22 Python
pycharm 关掉syntax检查操作
Jun 09 #Python
Python控制台实现交互式环境执行
Jun 09 #Python
使用pycharm和pylint检查python代码规范操作
Jun 09 #Python
Python基于数列实现购物车程序过程详解
Jun 09 #Python
pycharm 对代码做静态检查操作
Jun 09 #Python
Python3读取和写入excel表格数据的示例代码
Jun 09 #Python
Python文件操作模拟用户登陆代码实例
Jun 09 #Python
You might like
CI框架Session.php源码分析
2014/11/03 PHP
php 调用百度sms来发送短信的实现示例
2018/11/02 PHP
激活 ActiveX 控件
2006/10/09 Javascript
区分JS中的undefined,null,&quot;&quot;,0和false
2007/03/08 Javascript
javascript 实现简单的table排序及table操作练习
2012/12/28 Javascript
js操作checkbox遇到的问题解决
2013/06/29 Javascript
AJAX跨域请求json数据的实现方法
2013/11/11 Javascript
jQuery控制iFrame(实例代码)
2013/11/19 Javascript
innerHTML,outerHTML,innerText,outerText的用法及区别解析
2013/12/16 Javascript
jQuery设置指定网页元素宽度和高度的方法
2015/03/25 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
正则中的回溯定义与用法分析【JS与java实现】
2016/12/27 Javascript
原生JS京东轮播图代码
2017/03/22 Javascript
js实现延迟加载的几种方法
2017/04/24 Javascript
JS图片预加载插件详解
2017/06/21 Javascript
深入理解vue2.0路由如何配置问题
2017/07/18 Javascript
纯JavaScript实现实时反馈系统时间
2017/10/26 Javascript
vue短信验证性能优化如何写入localstorage中
2018/04/25 Javascript
Vue路由切换时的左滑和右滑效果示例
2018/05/29 Javascript
vue+VeeValidate 校验范围实例详解(部分校验,全部校验)
2018/10/19 Javascript
代码整洁之道(重构)
2018/10/25 Javascript
解决echarts vue数据更新,视图不更新问题(echarts嵌在vue弹框中)
2020/07/20 Javascript
在Python中使用HTML模版的教程
2015/04/29 Python
django中模板的html自动转意方法
2018/05/27 Python
Python如何通过百度翻译API实现翻译功能
2020/04/02 Python
Matplotlib配色之Colormap详解
2021/01/05 Python
python编写扎金花小程序的实例代码
2021/02/23 Python
美国知名男士服饰品牌:Brooks Brothers(布克兄弟)
2016/08/25 全球购物
意大利在线药房:shop-farmacia.it
2019/03/12 全球购物
Hashtable 添加内容的方式有哪几种,有什么区别?
2012/04/08 面试题
校园联欢晚会主持词
2014/03/17 职场文书
2014年化验室工作总结
2014/11/21 职场文书
2014学生会工作总结报告
2014/12/02 职场文书
企业介绍信范文
2015/01/30 职场文书
小学端午节活动总结
2015/02/11 职场文书
Java获取字符串编码格式实现思路
2022/09/23 Java/Android