1. 程式人生 > >python2.7練習小例子(二十七)

python2.7練習小例子(二十七)

IT 個數字 如果 dia yar gson pri python 實例

27):題目:一個5位數,判斷它是不是回文數。即12321是回文數,個位與萬位相同,十位與千位相同。


#!/usr/bin/python
# -*- coding: UTF-8 -*-

a = int(raw_input("請輸入一個數字:\n"))
x = str(a)
flag = True
 
for i in range(len(x)/2):
    if x[i] != x[-i - 1]:
        flag = False
        break
if flag:
    print "%d 是一個回文數!" % a
else:
    print "%d 不是一個回文數!" % a

以上實例輸出結果為:

請輸入一個數字:
12321
12321 是一個回文數!

Python3.x 版本可通過以下方式實現:

#!/usr/bin/env python3

a = input("輸入一串數字: ")
b = a[::-1]
if a == b:
    print("%s 是回文"% a)
else:
    print("%s 不是回文"% a)

Python3.x 版本可通過以下方式實現:

#!/usr/bin/env python3

str = input("請輸入5位數: ")

if str[0] == str[-1] and str[1] == str[-2]:
    print( "%s 是一個回文數!" % str)
else:
    print( "%s 不是一個回文數!" % str)

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()

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

# 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)

# 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)

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‘)

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("是")

# -*- 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)

一個練手的小例子。如果感覺不錯的話,請多多點贊支持哦。。。

  原文鏈接:https://blog.csdn.net/luyaran/article/details/80075325

python2.7練習小例子(二十七)