python2.7练习小例子(二十七)

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

    


#!/usr/bin/python
# -*- coding: UTF-8 -*-

a = int(raw_input("请输入一个数字:\n")) x = str(a) flag = True  for i in range(len(x)/2):  if x[i] != x[-i - 1]:  flag = False  break if flag:  print "%d 是一个回文数!" % a else:  print "%d 不是一个回文数!" % a 

    以上实例输出结果为:

请输入一个数字:
12321
12321 是一个回文数!

    Python3.x 版本可通过以下方式实现:

#!/usr/bin/env python3

a = input("输入一串数字: ") b = a[::-1] if a == b: print("%s 是回文"% a) else: print("%s 不是回文"% a)

    Python3.x 版本可通过以下方式实现:

#!/usr/bin/env python3

str = input("请输入5位数: ") if str[0] == str[-1] and str[1] == str[-2]:     print( "%s 是一个回文数!" % str) else: print( "%s 不是一个回文数!" % str)

    python3可以通过以下方法实,12321和123321同样都是回文数,这个判断更全面:

def number30():
  n = input("please input a num:") x = list(n) l = len(x) if l % 2 != 0: # 判断是奇数还是偶数  mediant = int((l + 1)/2) # 定义中间位置  i = x[:mediant - 1] x.reverse() j = x[:mediant - 1] if i == j: print("{0}是一个回文数".format(n)) else: print("{0}不是一个回文数".format(n)) else: mediant = int(l / 2) i = x[:mediant] x.reverse() j = x[:mediant] if i == j: print("{0}是一个回文数".format(n)) else: print("{0}不是一个回文数".format(n)) number30()

    Python3 测试实例:

# coding:utf-8
num=int(input("请输入一个5位数:")) def fn(s): if len(s)==1: return(s[0]) else: a=s[-1] s=s[:-1] return(a+fn(s)) while 1: if num<=0 or len(str(num))!=5: num=int(input("输入错误,请重新输入:")) else: num=str(num) print() if fn(num)==num: print("%s是回文数" % num) else: print("%s不是回文数" % num) break

    

# coding:utf-8

def is_true_num(num): if 10000<=num and num <=99999: b = num/10000 c = (num/1000)%10 d = (num%1000)%100/10 e = num%10 if b==e and c==d: print "%d:是回文数"%num else: print "%d:不是回文数"%num else: print "%d:输入错误,请重新输入" % num if __name__ == '__main__': a = int(raw_input("请输入5位数字:")) is_true_num(a)

    

# coding:utf-8

def test(num): if(num>=10000 and num<100000): s=str(num) x=[] for i in s: x.append(i) if(x[0]==x[4] and x[1]==x[3]): print "是" else: print "不是" else: print "输入错误" test(12321)

    Python3 测试实例:

#用列表反转法
s=input('Pleae enter 5 numbers:>>>') li1=[] li2=[] for i in s: li1.append(i) li2.append(i) li2.reverse() print(li1,li2) if li1== li2: print('Yes') else: print('No')

    Python3 测试实例:

#!/usr/bin/env python3

a = input("请输入一个数字:") b=list(a) m=1 for i in range(len(a)//2): if a[i]!=a[-1-i]: print("不是") m=0 break if m: print("是")

    

# -*- coding:utf-8 -*-
# 在Python3下实现

x = int(input('请输入一个五位数:\n')) a = x // 10000 b = x % 10000 // 1000 c = x % 1000 // 100 d = x % 100 // 10 e = x % 10 if a == e and b == d: print('%d是一个回文数!',x) else: print('%d不是一个回文数!',x)

    一个练手的小例子。如果感觉不错的话,请多多点赞支持哦。。。

  原文链接:https://blog.csdn.net/luyaran/article/details/80075325

猜你喜欢

转载自www.cnblogs.com/luyaran/p/8943943.html
今日推荐