1. python 編寫函數,判斷輸入的數字是否為迴文數
這個有好幾種方式實現,最簡單的首先數字轉換成字元串x=12321 y=str(x),然後使用list[start:end:span]這種句式將字元串轉換成list並倒序輸出y[::-1],其中span小於0時倒序,大於0時正序,-1按順序倒序輸出,-2隔一個倒序輸出。
具體如下
x = input("請輸入任意數字")
if x == x[::-1]:
print("迴文數")
else:
print("不是迴文數")
2. python 編寫函數,判斷輸入的數字是否為迴文數
這個有好幾種方式實現,最簡單的首先數字轉換成字元串x=12321
y=str(x),然後使用list[start:end:span]這種句式將字元串轉換成list並倒序輸出y[::-1],其中span小於0時倒序,大於0時正序,-1按順序倒序輸出,-2隔一個倒序輸出。
具體如下
x
=
input("請輸入任意數字")
if
x
==
x[::-1]:
print("迴文數")
else:
print("不是迴文數")
3. python 產生迴文數
from itertools import proct
def palind(n):
return [n*'%s'%tuple( list(i) + list(i[-(n%2)-1::-1]) ) for i in proct(*( [range(1,10)]+[range(10)]*((n-1)/2)) )]
print map(palind, [3,4,5])
如果需要產生迴文數,一般會判斷是否對稱或比較反轉後是否還是自身然後過濾,范圍較大時,效率就不高了
n位的迴文數是其實是由前Ceiling(n/2)位決定的,以上代碼採用構造法生成迴文數,生成10位以內的迴文數<1s (不輸出)
4. python編程,迴文數判斷
def func(n):
m=0
t=n
while t>0:
m=m*10+t%10
t=t//10
return m==n
n=int(input())
if func(n):
print("yes")
else:
print("no")
5. 如何用python判斷迴文數
1、實現源碼
def huiWen():
smn = input('請輸入:')
if not smn:
print('請輸入正確的字元串:')
smn = input('請輸入:')
wmn = reversed(list(smn))
if list(wmn) == list(smn):
print('%s' % smn + '是迴文')
else:
print('%s' % smn + '不是迴文')
huiWen()
2、實現結果
請輸入:78879
78879不是迴文
請輸入:abbbba
abbbba是迴文
6. python迴文數,第一段代碼輸出的迴文數中包含0,但第二段代碼輸出的結果中沒有0,求大神答疑解惑!
filter 函數引起的啊,為0 就不返回了。
if i==(int((len(str(n)))/2)):
return n
改成
if i==(int((len(str(n)))/2)):
return str(n)
就可以了
7. 如何用python找出10000以內的全部迴文數
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)
8. python求出五位數的迴文數
「迴文」是指正讀反讀都能讀通的句子,它是古今中外都有的一種修辭方式和文字游戲,如「我為人人,人人為我」等。在數學中也有這樣一類數字有這樣的特徵,稱為迴文數。
題主如果是想求五位數的迴文數,一起構成一個十位數,那直接倒序輸出就行了。將倒序後的數組存放到一個新數組,和之前的五位數一起構成一個新數組。
下面實現一下我的想法:
a = input('請輸入一個五位數:')
old_list = list(a)
new_list = old_list[::-1]
sum_list = old_list + new_list
result = ''.join(sum_list)
print(result)