练习三十:Python回文数判断编程练习。
说到回文数,大家可能会比较的陌生,但是在我们的日常生活中常会遇到这样的数字,只是你不知道它是回文数罢了。
例如:12321,这组数字就是回文数。
设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数,这是大百度为我们的解释。
如果想更深入的了解,可以自行查找资料加深学习。
方法一:
1 num = input("输入一个数") 2 results=['是回文数','不是回文数','输入的不是数字'] 3 result='' 4 if num.isdigit(): 5 num = str(num) 6 for i in range(len(num)//2): 7 if num[i] == num[len(num)-i-1]: 8 continue 9 else: 10 print(num,results[1]) 11 result = results[1] 12 break 13 if result != results[1]: 14 print(num,results[0]) 15 else: 16 print(results[2])
执行结果:
输入一个数:123454321 123454321 是回文数
方法二:
1 def Type(num): 2 if not isinstance(num,int): 3 return False 4 if num < 0: 5 return False 6 elif num > 0: 7 num = str(num) 8 list1 = list(num) 9 list2 = list1[:] 10 list2.reverse() 11 if list1 == list2: 12 return num,"是回文数" 13 else: 14 return "不是回文数" 15 16 num = int(input("输入一个数:")) 17 print(Type(num))
执行结果:
输入一个数:123454321 ('123454321', '是回文数')