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爬虫
Dec 25 Python
10种检测Python程序运行时间、CPU和内存占用的方法
Apr 01 Python
浅谈python中的__init__、__new__和__call__方法
Jul 18 Python
基于Python os模块常用命令介绍
Nov 03 Python
Python 错误和异常代码详解
Jan 29 Python
Python matplotlib的使用并自定义colormap的方法
Dec 13 Python
Python中最好用的命令行参数解析工具(argparse)
Aug 23 Python
Python使用__new__()方法为对象分配内存及返回对象的引用示例
Sep 20 Python
详解python 破解网站反爬虫的两种简单方法
Feb 09 Python
有趣的Python图片制作之如何用QQ好友头像拼接出里昂
Apr 22 Python
利用python中的matplotlib打印混淆矩阵实例
Jun 16 Python
Python制作动态字符画的源码
Aug 04 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在Web开发领域的优势
2006/10/09 PHP
php实现rc4加密算法代码
2012/04/25 PHP
php中session过期时间设置及session回收机制介绍
2014/05/05 PHP
PHP 实现判断用户是否手机访问
2015/01/21 PHP
PHP数组操作――获取数组最后一个值的方法
2015/04/14 PHP
微信公众平台开发之天气预报功能
2015/08/31 PHP
PHP正则表达式入门教程(推荐)
2016/05/18 PHP
Laravel5.5 动态切换多语言的操作方式
2019/10/25 PHP
Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析
2020/05/15 PHP
让getElementsByName适应IE和firefox的方法
2007/09/24 Javascript
JavaScript 学习笔记(十六) js事件
2010/02/01 Javascript
Highcharts 非常实用的Javascript统计图demo示例
2013/07/03 Javascript
JavaScript中的toLocaleLowerCase()方法使用详解
2015/06/06 Javascript
JS表格组件神器bootstrap table详解(基础版)
2015/12/08 Javascript
基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
2016/08/29 Javascript
原生js实现类似fullpage的单页/全屏滚动
2017/01/22 Javascript
基于Node.js的WebSocket通信实现
2017/03/11 Javascript
vue2组件实现懒加载浅析
2017/03/29 Javascript
js中url对象化管理分析
2017/12/29 Javascript
原生js调用json方法总结
2018/02/22 Javascript
转换layUI的数据表格中的日期格式方法
2019/09/19 Javascript
Vue防止白屏添加首屏动画的实例
2019/10/31 Javascript
Python 列表(List) 的三种遍历方法实例 详解
2017/04/15 Python
Python重新加载模块的实现方法
2018/10/16 Python
python程序变成软件的实操方法
2019/06/24 Python
基于Python获取城市近7天天气预报
2019/11/26 Python
django 将自带的数据库sqlite3改成mysql实例
2020/07/09 Python
学点简单的Django之第一个Django程序的实现
2021/02/24 Python
请说出以下代码输出什么
2013/08/30 面试题
高中毕业自我鉴定
2013/12/13 职场文书
微型企业创业投资计划书
2014/01/10 职场文书
幼儿教师思想汇报
2014/01/10 职场文书
外贸会计专业自荐信
2014/06/22 职场文书
应届生们该怎么书写求职信?
2019/07/05 职场文书
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python
Go本地测试解耦任务拆解及沟通详解Go本地测试的思路沟通的重要性总结
2022/06/21 Golang