Python練習

練習一下Python的基本語法,每一個單獨的測試寫進一個函數內,執行時只需調用相應的函數即可,可以對習題進行舉一反三,加強理解。


#!/usr/bin/python
# while循環打印數字0到10
def pp1():
    n = 0
    while n <= 10:
        print n,
        n += 1
# for循環打印數字0到10
def pp2():
    for n in range(0, 11):
        print n,
# if 控制結構判斷數字正負
def pp3():
#   i = 23
    i = int(raw_input('Input your number: '))
    if i < 0:
        print "less than 0."
    elif i == 0:
        print "equal 0."
    else:
        print "larger than 0."
# 依次打印一個字符串的每個字符
def pp4():
    s = raw_input('type a string: ')
    for i in range(0, len(s)):
        print s[i]
# 用while改寫上例
def pp5():
    s = raw_input('type a string: ')
    i = 0
    while i < len(s):
        print s[i]
        i += 1
# 對五個數求平均值
def pp6():
    num = [7, 7, 8, 9, 10]
    sum = 0
    for i in range(0, len(num)):
        sum += num[i]
                       
    avg = float(sum/len(num))
    print avg
# 猜一個數值
def pp7():
    rdom = 56
    while True:
        ynum = int(raw_input('Input a number between 1 and 100: '))
        if ynum > rdom:
            print 'Your number is too high.'
            continue
        elif ynum < rdom:
            print 'Your number is too low.'
            continue
        else:
            print 'You got.'
            break
# 根據菜單提示選擇求和,平均值選項
def pp8():
    print '\t\t\t1). Get sum\n\t\t\t2). Get average\n\t\t\tx). Exit'
    ychoice = raw_input('Choose your option: ')
    if ychoice == '1':
        n1 = int(raw_input('Input first data: ')) 
        n2 = int(raw_input('Input second data: '))
        n3 = int(raw_input('Input third data: ')) 
        n4 = int(raw_input('Input fourth data: '))
        n5 = int(raw_input('Input fifth data: ')) 
        sum = n1+n2+n3+n4+n5
        print 'The sum is: ', sum
    elif ychoice == '2':
        n1 = int(raw_input('Input first data: ')) 
        n2 = int(raw_input('Input second data: '))
        n3 = int(raw_input('Input third data: ')) 
        n4 = int(raw_input('Input fourth data: '))
        n5 = int(raw_input('Input fifth data: ')) 
        sum = n1+n2+n3+n4+n5
        avg = sum / 5
        print 'The average is: ', avg
    elif ychoice == 'x':
        print 'Exit.' 
    else:
        print 'You type wrong choice. Exit.'
# 對3個數字進行由小到大排序
def pp9():
    num1 = int(raw_input('Input number one: '))
    num2 = int(raw_input('Input number two: '))
    num3 = int(raw_input('Input number three: '))
    print num1, num2, num3
    if num1 > num2:
        if num1 > num3:
            if num2 > num3:
                print num3, num2, num1
            else:
                print num2, num3, num1
        else:
            print num2, num1, num3
    else:
        if num1 > num3:
            print num3, num1, num2
        else:
            if num3 > num2:
                print num1, num2, num3
            else:
                print num1, num3, num2
                               
# 執行相應函數
pp9()


# 判斷年份是否爲閏年
def pp12():
    yyear = int(raw_input('Input the year: '))
    if yyear % 4 == 0:
        if yyear % 100 == 0:
            if yyear % 400 == 0:
                return "Leap year."
            else:
                return "Not a leap year."
        else:
            return "Leap year."
    else:
        return "Not a leap year."
#print pp12()
# 輸入小於1美元的美分,判斷分別由幾個25美分,10美分,5美分和1美分組成,按最少組合計
def pp13():
    n1 = n2 = n3 = n4 = 0
    ymoney = float(raw_input('Input your money(<1): '))
    ymoney *= 100
    if ymoney // 25 == 0:
        n1 = ymoney // 25
    else:
        n1 = ymoney // 25
        rest1 = ymoney % 25
        if rest1 % 10 == 0:
            n2 = rest1 // 10
        else:
            n2 = rest1 // 10
            rest2 = rest1 % 10
            if rest2 % 5 == 0:
                n3 = rest2 // 5
            else:
                n3 = rest2 // 5
                rest3 = rest2 % 5
                if rest3 % 1 == 0:
                    n4 = rest3 // 1
    print "Your money is ", int(n1), \
"*0.25 cents, ", int(n2), "*0.1 cents, ", int(n3), \
"*0.05 cents, ", int(n4), "*0.01 cents."
pp13()


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章