文章 > Python高级 > 三种方法快速搞定Python判断回文数

三种方法快速搞定Python判断回文数

Python

头像

饮醉不止马匹

2021-03-30 10:50:27175浏览 · 0收藏 · 0评论

banner37(1).png

首先,回文数是一种数字如:98789倒读也为98789正读倒读都一样这种数字就叫回文数。这样我们就可以用Python语言中的一些技巧判断处理了。

Python判断回文数可以先从控制台输入一个五位数,先判断是否是五位,是否是纯数字组成,如果是回文数就会打印“是回文数”,如果不是就会打印“不是回文数”,下面通过三种方法看下python如何判断回文数。

一、算术运算

通过整除,求模的算数运算得到各位上的数字,再通过比较前后对比(个位与万位,十位与千位做对比)

示例:

a = input('请输入一个五位数:')
# 判断长度是否是5位,是否有纯数字组成if len(a) == 5 and a.isdigit():
# 将str转为inta = int(a)
# (万位与各位) and (千位与十位)
if (a//10000 == a%10) and (a%10000//1000 == a%100 // 10):
print(f'{a}是回文数')else:print(f'{a}不是回文数')else:print('输入有误')

二、字符串索引取值

通过输入的字符串进行索引取值,前后进行对比

示例:

a = input('请输入一个五位数:')
# 判断长度是否是5位,是否有纯数字组成
if len(a) == 5 and a.isdigit():
# 对a[0]和a[4],a[1]和a[3],进行对比
if (a[0] == a[4]) and (a[1] == a[3]):print('%f是回文数' % (a))else:   
print('%f不是回文数' % (a))else:print('输入有误')

三、切片操作,取逆序结果

input()函数输入的数据的类型是str,str是有序的,所以可以对str切片操作,并取逆序的结果,将逆序的结果与原来的str做比较

示例:

a = input('请输入一个五位数:')
# 判断长度是否是5位,是否有纯数字组成if len(a) == 5 and a.isdigit():
# 逆序切片的结果与a做比较if a[::-1] == a:print(f'{a}是回文数')else:
print(f'{a}不是回文数')else:print('输入有误')

更多python相关知识免费学习,欢迎访问python学习网

关注公众号

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图 底部广告图按钮