python判断回文_「每日一练」巧用Python识别是不是回文数

原标题:「每日一练」巧用Python识别是不是回文数

Python对于数字的处理能力是很强大的,今天我们让Python判断我们输入的一个数是不是回文数,那么什么是回文数呢?12321是回文数,个位与万位相同,十位与千位相同。

往下看,就是这么简单!

案例

一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

先上代码~

fb2bb0eb89a74f9888803685bc05d11a.jpeg

运行效果

ea8e00db47e243c1a84dba147cf45125.jpeg

2001753ed41b4f8cbd9cc151377509e3.jpeg

题目详述

程序分析:要实现对于回文数的判断,我们需要对这个数前后的数字进行对比,第一位跟最后一位数字,第二位跟倒数第二位数字

第一行:

s = input('随便输入一个整数:')

创建一个input函数,用来存放输入的整体,作为原始变量s使用,注意这个时候s的格式是字符串

第二行:

l = len(s)

len() 方法返回列表元素个数,如果是字符串的话,返回的是字符串中字符的长度

第三行:

flag = True

创建一个布尔类型的变量,刚开始赋值为True,如果在判断全部结束之后,依旧为 True则满足条件

第四行:

for i in range(l//2):

if s[i] != s[-i-1]:

flag = False

因为range只接受整数类型,所以这里我们遍历的时候,取总长度的一半并且用整除的值,比如说4位数,取2,5位数的话依旧是取2,这就足够把前后的数字都对比一下

s[i] != s[-i-1]这个需要重点讲解一下,这里需要对下标的概念很熟悉才能清楚这个,下标是从0开始到len(s)-1,这个是正序排列,逆序则是从-1到-len(s),相信通过对比,不难理解上边为何要那么对比,如果有一个不满足前后数字对应,就将False赋值给flag

第五行:

if flag == True:

print("%s 是一个回文数!" % s)

else:

print("%s 不是一个回文数!" % s)

这个相信比较好理解,如果flag还是True,则说明s是回文数,否则s不满足回文数的条件!

进阶:

轻松的就实现想要的目的

是不是很便捷呢

结束语

总体来说思路只要有了,以后遇到类似的问题就可以解决了,是不是发现原来Python可以这么神奇!

———— e n d ————

e3c5fa07d94d4f95a83b3bd11738397d.jpeg

觉得文章不错的,欢迎点在看和转发返回搜狐,查看更多

责任编辑:

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值