
人生苦短,我用Python
環(huán)境:
Windows 10 64-bit, python == 3.6.4 , PyCharm CE == 2018.1
什么是回文數(shù):
有這樣一類(lèi)數(shù),他們順著看和倒著看是相同的數(shù),例如:12321,1221,2332等,這樣的數(shù)字就稱(chēng)為:回文數(shù)
題目:輸入一個(gè)5位數(shù),判斷它是不是回文數(shù)。即12321是回文數(shù),個(gè)位與萬(wàn)位相同,十位與千位相同。
- 找出5位數(shù)中所有的回文數(shù):
方法1.使用for 循環(huán)
# 找出5位數(shù)中所有的回文數(shù):
for i in range(10000,100000): # 遍歷所有的5位數(shù)
s = str(i) # 將數(shù)轉(zhuǎn)換成字符串類(lèi)型,即可以用索引取出每一位上的數(shù)字
if s[0] == s[-1] and s[1] == s[-2]: # 字符串的索引
print(i)
方法2. 定義函數(shù):
def is_huiwen(n):
reversed_str= str(n)
return reversed_str == reversed_str[-1::-1] #
output = filter(is_huiwen,range(10000,100000))
print(list(output))
- 用戶(hù)自己輸入一個(gè)5位數(shù),判斷是否是回文數(shù):
# 輸入一個(gè)5位數(shù),判斷它是否是回文數(shù):
a = int(input(" 請(qǐng)輸入一個(gè)5位整數(shù):"))
s = str(a)
if s[0] == s[-1] and s[1] == s[-2]:
print(" %d 是一個(gè)回文數(shù)!" % a)
else:
print(" %d 不是一個(gè)回文數(shù)!" % a)
- 判斷任意一個(gè)整數(shù)是否是回文數(shù):
n = int(input('請(qǐng)輸入一個(gè)整數(shù):'))
s = str(n)
f = True
for i in range(len(s)//2):
if s[i] != s[-1-i]:
f = False
break
if f:
print('%d 是一個(gè)回文數(shù)' % n)
else:
print('%d 不是一個(gè)回文數(shù)' % n)