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下载FTP上的文件夹的实现代码
Feb 10 Python
Python中用于去除空格的三个函数的使用小结
Apr 07 Python
Python基于smtplib实现异步发送邮件服务
May 28 Python
Python输出带颜色的字符串实例
Oct 10 Python
python实现外卖信息管理系统
Jan 11 Python
判断python字典中key是否存在的两种方法
Aug 10 Python
python的等深分箱实例
Nov 22 Python
pytorch随机采样操作SubsetRandomSampler()
Jul 07 Python
matplotlib基础绘图命令之imshow的使用
Aug 13 Python
python 如何利用argparse解析命令行参数
Sep 11 Python
详解Python3.8+PyQt5+pyqt5-tools+Pycharm配置详细教程
Nov 02 Python
pytorch分类模型绘制混淆矩阵以及可视化详解
Apr 07 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
第十节 抽象方法和抽象类 [10]
2006/10/09 PHP
PHP输入输出流学习笔记
2015/05/12 PHP
php基本函数汇总
2015/07/09 PHP
PHP简单判断字符串是否包含另一个字符串的方法
2016/03/25 PHP
php微信开发之图片回复功能
2018/06/14 PHP
使用prototype.js进行异步操作
2007/02/07 Javascript
超清晰的document对象详解
2007/02/27 Javascript
javascript hasFocus使用实例
2010/06/29 Javascript
javascript错误的认识不用关心内存管理
2012/12/15 Javascript
基于JavaScript 下namespace 功能的简单分析
2013/07/05 Javascript
使用js实现按钮控制文本框加1减1应用于小时+分钟
2013/12/09 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
JavaScript跨域调用基于JSON的RESTful API
2016/07/09 Javascript
js仿新浪微博消息发布功能
2017/02/17 Javascript
jQuery表格(Table)基本操作实例分析
2017/03/10 Javascript
vuejs绑定class和style样式
2017/04/11 Javascript
JavaScript实现反转字符串的方法详解
2017/04/27 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
2018/11/13 Javascript
浅谈react-router@4.0 使用方法和源码分析
2019/06/04 Javascript
vue 开发之路由配置方法详解
2019/12/02 Javascript
vue excel上传预览和table内容下载到excel文件中
2019/12/10 Javascript
微信小程序实现上传多个文件 超过10个
2020/03/30 Javascript
深入理解python中sort()与sorted()的区别
2018/08/29 Python
Django接收自定义http header过程详解
2019/08/23 Python
基于python plotly交互式图表大全
2019/12/07 Python
法国珠宝店:CLEOR
2017/01/29 全球购物
英国第一的购买便宜玩具和游戏的在线购物网站:Bargain Max
2018/01/24 全球购物
Boden英国官网:英国知名原创时装品牌
2018/11/06 全球购物
六十岁生日答谢词
2014/01/10 职场文书
李敖北大演讲稿
2014/05/24 职场文书
2019职场实习报告该怎么写?
2019/07/01 职场文书
学习师德师风的心得体会(2篇)
2019/10/08 职场文书
只用20行Python代码实现屏幕录制功能
2021/06/02 Python
MySQL 时间类型的选择
2021/06/05 MySQL
MySQL中连接查询和子查询的问题
2021/09/04 MySQL