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实现TCP服务器端与客户端的方法详解
Apr 30 Python
Python六大开源框架对比
Oct 19 Python
在cmd命令行里进入和退出Python程序的方法
May 12 Python
python 字典修改键(key)的几种方法
Aug 10 Python
python中的不可变数据类型与可变数据类型详解
Sep 16 Python
Python爬虫文件下载图文教程
Dec 23 Python
django获取from表单multiple-select的value和id的方法
Jul 19 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
Sep 29 Python
python cv2读取rtsp实时码流按时生成连续视频文件方式
Dec 25 Python
Python实现迪杰斯特拉算法过程解析
Sep 18 Python
基于Python制作一副扑克牌过程详解
Oct 19 Python
提取视频中的音频 Python只需要三行代码!
May 10 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
php rsa加密解密使用详解
2015/01/14 PHP
WordPress后台中实现图片上传功能的实例讲解
2016/01/11 PHP
PHP实现的超长文本分页显示功能示例
2018/06/04 PHP
php实现映射操作实例详解
2019/10/02 PHP
JavaScript网页定位详解
2014/01/13 Javascript
jQuery自动添加表单项的方法
2015/07/13 Javascript
浏览器兼容的JS写法总结
2016/04/27 Javascript
JS判断图片是否加载完成方法汇总(最新版)
2016/05/13 Javascript
轻松5句话解决JavaScript的作用域
2016/07/15 Javascript
javascript 中设置window.location.href跳转无效问题解决办法
2017/02/09 Javascript
jquery中关于bind()方法的使用技巧分享
2017/03/30 jQuery
vue如何引用其他组件(css和js)
2017/04/13 Javascript
Vue分页组件实例代码
2017/04/17 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
2017/10/16 Javascript
electron + vue项目实现打印小票功能及实现代码
2018/11/25 Javascript
使用vue脚手架(vue-cli)搭建一个项目详解
2019/05/09 Javascript
微信小程序实现日期格式化和倒计时
2020/11/01 Javascript
layui添加动态菜单与选项卡 AJAX请求的例子
2019/09/25 Javascript
python 装饰器功能以及函数参数使用介绍
2012/01/27 Python
Python编程中的文件读写及相关的文件对象方法讲解
2016/01/19 Python
python3+PyQt5使用数据库表视图
2018/04/24 Python
python按时间排序目录下的文件实现方法
2018/10/17 Python
python 操作mysql数据中fetchone()和fetchall()方式
2020/05/15 Python
Keras中的多分类损失函数用法categorical_crossentropy
2020/06/11 Python
基于OpenCV的网络实时视频流传输的实现
2020/11/15 Python
浅析python实现动态规划背包问题
2020/12/31 Python
世界上最大的在线旅行社新加坡网站:Expedia新加坡
2016/08/25 全球购物
实习教师自我鉴定
2013/12/09 职场文书
人力资源职位说明书
2014/07/29 职场文书
诚实守信道德模范事迹材料
2014/08/15 职场文书
关于感恩的演讲稿500字
2014/08/26 职场文书
2015年妇产科工作总结
2015/05/18 职场文书
预备党员考察意见范文
2015/06/01 职场文书
大学生暑期实践报告
2015/07/13 职场文书
python实战之90行代码写个猜数字游戏
2021/04/22 Python
Vue3.0 手写放大镜效果
2021/07/25 Vue.js