讀古今文學網 > 父與子的編程之旅:與小卡特一起學Python > 第13章 >

第13章

測試題

1. 使用 def 關鍵字來創建一個函數。

2. 調用函數時要使用函數名和一對小括號。

3. 調用函數時把參數放在小括號裡,就可以向這個函數傳入參數。

4. 一個函數可以有任意多個參數,對此沒有任何限制。

5. 函數使用 return 關鍵字向調用者發回信息。

6. 函數完成運行後,所有局部變量都會撤銷。

動手試一試

1. 這個函數只需要一組 print 語句:

def printMyNameBig:    print "  CCCC       A       RRRRR  TTTTTTT  EEEEEE  RRRRR  "    print " C    C     A A      R    R    T     E       R    R "    print "C  A   A     R    R    T     EEEE    R    R "    print "C AAAAAAA    RRRRR     T     E       RRRRR  "    print " C    C  A       A   R    R    T     E       R    R "    print "  CCCC  A A  R     R   T     EEEEEE  R     R"  

調用這個函數的程序如下所示:

for i in range(5):    printMyNameBig  

2. 下面給出我的做法,這裡利用 7 個參數打印地址:

# define a function with seven argumentsdef printAddr(name, num, street, city, prov, pcode, country):    print name    print num,    print street    print city,    if prov !="":print ", "+prov    else:print ""    print pcode    print country    print#call the function and pass seven arguments to itprintAddr("Sam", "45", "Main St.", "Ottawa", "ON", "K2M 2E9", "Canada")printAddr("Jian", "64", "2nd Ave.", "Hong Kong", "", "235643", "China")  

3. 沒有具體答案,可以動手試一試。

4. 合計零錢的函數應當如下所示:

def addUpChange(quarters, dimes, nickels, pennies):    total = 0.25 * quarters + 0.10 * dimes + 0.05 * nickels + 0.01 *pennies    return total  

調用它的程序可能如下所示:

quarters = int(raw_input("quarters: "))dimes = int(raw_input("dimes: "))nickels = int(raw_input("nickels: "))pennies = int(raw_input("pennies: "))total = addUpChange(quarters, dimes, nickels, pennies)print "You have a total of: ", total