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)

输出结果如下:

请输入一个5位数:12532
12532不是回文数

 

请输入一个5位数:98289
98289是个回文数

 

【2016-10-20 更新】----------------------------------------

上面的代码虽然凑合也能解决问题,但一旦用户输入的不是5位数,那就瞎了!感谢 rm-rf 提供的新思路,用切片的方法就可以很巧妙地解决问题。代码更新如下:

x = input('请输入任意位数的数字:')
if x == x[::-1]:
    print('%s是个回文数' % x)
else:
    print('%s不是回文数' % x)

记得 codegay 就曾经在【Python练习题 022:用递归函数反转字符串】提醒过我,可以用 str[::-1] 来反转字符串。谁想刚过没几道题,我就忘了这神器了。真是脑子不够使!

 

++++++++++++++++++++++++++++++++++++++

题目出处:编程语言入门经典100例【Python版】

posted @ 2016-10-18 20:21  木木卡卡西  阅读(21402)  评论(2编辑  收藏  举报