Python 练习实例30
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
程序分析:无。
程序源代码:
实例(Python 2.0+)
实例(Python 3.0+)
以上实例输出结果为:
请输入一个数字: 12321 12321 是一个回文数!
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
程序分析:无。
程序源代码:
以上实例输出结果为:
请输入一个数字: 12321 12321 是一个回文数!
13121
107***[email protected]
Python3.x 版本可通过以下方式实现:
#!/usr/bin/env python3
a = input("输入一串数字: ")
b = a[::-1]
if a == b:
print("%s 是回文"% a)
else:
print("%s 不是回文"% a)
13121
107***[email protected]
等一个人
252***[email protected]
Python3 下测试:
#!/usr/bin/env python3
str = input("请输入5位数: ")
if str[0] == str[-1] and str[1] == str[-2]:
print( "%s 是一个回文数!" % str)
else:
print( "%s 不是一个回文数!" % str)
等一个人
252***[email protected]
sunjl
136***[email protected]
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()
sunjl
136***[email protected]
朦胧
253***[email protected]
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
朦胧
253***[email protected]
Mervyn
110***[email protected]
参考方法:
# 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)Mervyn
110***[email protected]
折木
643***[email protected]
参考方法:
# 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)
折木
643***[email protected]
Leo
wl4***[email protected]
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')
Leo
wl4***[email protected]
大大大大大大大熊
382***[email protected]
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("是")大大大大大大大熊
382***[email protected]
树先生
129***[email protected]
# -*- 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)树先生
129***[email protected]