寻找回文数的python的实现

寻找回文数

寻找回文数也是一个比较好玩的题目,也是学习python的一个简单的filter()函数的应用

解决方法:即按照回文数的特点进行即可。

方法一:一行代码解决

#coding=UTF-8
#寻找回文数
def is_palindrome(n):
    s=str(n)
    return s[0:len(s)//2]==s[-1:len(s)//2:-1]
    #return str(n)==str(n)[::-1]

#测试
for i in filter(is_palindrome,range(1000)):
    print(i)

方法二:也是一行代码解决

#coding=UTF-8
#寻找回文数
def is_palindrome(n):
    return str(n)==str(n)[::-1]

#测试
for i in filter(is_palindrome,range(1000)):
    print(i)

边学习python,越发觉得python怎么可以这么强大,一行代码就可以解决好多问题。代码真是短小精悍,说的一点也不错。

           **真心强大**

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-07 00:18:54

寻找回文数的python的实现的相关文章

欧拉项目004:寻找最大的回文数

Problem 4: Largest palindrome product A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99. Find the largest palindrome made from the product of two 3-digit numbers. 寻找有两

Python练习题 025:判断回文数

[Python练习题 025] 一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. ----------------------------------------------- 做题做到现在,这种题目已经很轻车熟路了.希望下一题能增加点难度啊~~~ x = input('请输入一个5位数:') if x[0] == x[4] and x[1] == x[3]: print('%s是个回文数' % x) else: print('%s不是回文数' % x) 输

Python基础判断回文数

#判断回文数 a=raw_input('your enter:\n')b=[]l=len(a)for i in range(0,l):    m=a[l-i-1]    b.append(m) for j in range(l):   mark=True   if a[j]!=b[j]:       print 'no'       mark=False       breakif mark==True:    print 'yes'

回文数---Python

回文数是从两端读都一样的数.可表示为2个2位数乘积的最大回文数是9009=91×99. 请找到可表示为2个三位数乘积的最大回文数.

python实现判断回文数

功能要求:  示例 1:        输入: 121        输出: true 示例 2:        输入: -121        输出: false        解释: 从左向右读, 为 -121 . 从右向左读, 为 121- .因此它不是一个回文数. 示例 3:        输入: 10        输出: false        解释: 从右向左读, 为 01 .因此它不是一个回文数. 源代码如下: num = raw_input('请输入数字:') if num

python中3位数中的水仙花数,和5位数中回文数的个数

3位数中的水仙花数打印num=100 e=0while num<1000: b=num%10 c=num//10%10 d=num//100 if b**3+c**3+d**3==num: e+=1 print (num) num+=1print (e) 5位数中的回文数的个数 num=10000e=0while num<=99999: a=num//10000 b=num//1000%10 c=num%100//10 d=num%10 if a==d and b==c: e+=1 print

洛谷P1207 [USACO1.2]双重回文数 Dual Palindromes

P1207 [USACO1.2]双重回文数 Dual Palindromes 291通过 462提交 题目提供者该用户不存在 标签USACO 难度普及- 提交  讨论  题解 最新讨论 暂时没有讨论 题目描述 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”.例如,12321就是一个回文数,而77778就不是.当然,回文数的首和尾都应是非零的,因此0220就不是回文数. 事实上,有一些数(如21),在十进制时不是回文数,但在其它进制(如二进制时为10101)时就是回文数. 编

leetcode 9 Palindrome Number 回文数

Determine whether an integer is a palindrome. Do this without extra space. click to show spoilers. Some hints: Could negative integers be palindromes? (ie, -1) If you are thinking of converting the integer to string, note the restriction of using ext

回文数系列题目(经典算法)

回文数 时间限制:1000 ms  |  内存限制:65535 KB 难度:0 描述 请寻找并输出1至1000000之间的数m,它满足m.m^2和m^3均为回文数.回文数大家都知道吧,就是各位数字左右对称的整数,例如121.676.123321等.满足上述条件的数如m=11,m^2=121,m^3=1331皆为回文数. 输入 没有输入 输出 输出1至1000000之间满足要求的全部回文数,每两个数之间用空格隔开,每行输出五个数 解析:这道题直接模拟就好了,算是回文数中最简单的题了,直接写个判断回