• 技术文章 >Python技术 >Python高级

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

    饮醉不止马匹饮醉不止马匹2021-03-30 10:50:27原创17652

    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学习网

    专题推荐:回文数 python
    上一篇:python迭代器怎样自定义类 下一篇:python 图像灰度处理

    相关文章推荐

    • 使用多线程让Python应用飞起来• Elasticsearch基本介绍及其与Python的对接实现• Python使用Pillow添加图片水印• 深究Python中的asyncio库-线程并发函数• 深究Python中的asyncio库-shield函数

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网