直接用字符串的反轉(zhuǎn)比較就可以了。不管是輸入的幾位正整數(shù)。
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的永和網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
a=input('輸入:')#輸入字符串
b=a[::-1]#倒序輸出
if a==b:#判斷是否相等
print('{} 是回文數(shù)'.format(a))
#format方法輸出
else:
print('{} 不是回文數(shù)'.format(a))
#format方法輸出
方法很簡(jiǎn)單,就是對(duì)前半段的每一位判斷后半段對(duì)應(yīng)那一位上的數(shù)字是否相同。
python代碼的縮進(jìn)非常重要,然而百度知道會(huì)吞掉空格,所以下面代碼是不能直接執(zhí)行的,你需要自己添加縮進(jìn)。
num?=?input("請(qǐng)輸入num:")
numStr?=?str(num)?#?把數(shù)字轉(zhuǎn)換成字符串便于處理
flag?=?True
for?i?in?range(int(((len(numStr)?+?1)?/?2))): #?判斷num前半段和后半段是否一一對(duì)應(yīng)
if?numStr[i]?!=?numStr[len(numStr)?-?1?-?i]:
flag?=?False
if?flag:
print(num,?"是回文數(shù)")
else:
print(num,?"不是回文數(shù)")
for i in range(10000):
s = str(i)
f = True
for j in range(len(s)//2):
if s[j] != s[-1-j]:
f = False
break
if f:
print (i)
這個(gè)有好幾種方式實(shí)現(xiàn),最簡(jiǎn)單的首先數(shù)字轉(zhuǎn)換成字符串x=12321
y=str(x),然后使用list[start:end:span]這種句式將字符串轉(zhuǎn)換成list并倒序輸出y[::-1],其中span小于0時(shí)倒序,大于0時(shí)正序,-1按順序倒序輸出,-2隔一個(gè)倒序輸出。
具體如下
x
=
input("請(qǐng)輸入任意數(shù)字")
if
x
==
x[::-1]:
print("回文數(shù)")
else:
print("不是回文數(shù)")
您可以使用以下代碼實(shí)現(xiàn)這個(gè)需求:
# 從鍵盤輸入一個(gè)三位整數(shù)
x = int(input("請(qǐng)輸入一個(gè)三位整數(shù):"))
# 計(jì)算個(gè)位數(shù)和百位數(shù)
xg = x % 10
xb = x // 100
# 判斷是否為回文數(shù)
if xg == xb:
print("YES")
else:
print("NO")
上述代碼首先通過輸入語句從鍵盤輸入一個(gè)三位整數(shù),并將它保存到變量 x 中。然后,通過對(duì) x 取模和整除運(yùn)算,計(jì)算出它的個(gè)位數(shù)和百位數(shù),并將它們保存到變量 xg 和 xb 中。最后,通過雙分支判斷結(jié)構(gòu),判斷 x 是否為回文數(shù),并輸出相應(yīng)的 YES 或 NO。
希望這些信息能夠幫助您。