三週三次課(11月1日)
1.熟悉函數的寫法
函數的一般形式
定義一個函數,需要以下規則:
函數代碼塊以def關鍵字開頭,後接函數標識符名稱和圓括號()。
任何傳入參數和自變量必須放在圓括號中間。圓括號之間可以用於定義參數。
函數的第一行語句可以選擇性地使用文檔字符串一用於存放函數說明。
函數內容以冒號起始,並且縮進。
return [表達式] 結束函數,選擇性的返回一個值給調用方。不帶表達式的return相當於返回None。
例子:
def sum(x, y): print('x = {0}' .format(x)) print('y = {0}' .format(y)) return x+y a = 10 b = 20 c = sum(a, b) print c
結果:
x = 10 y = 20 30
解釋:
1.def是函數的關鍵字,格式就是這樣的。
2.def後面跟的就是函數名稱,這個可以自定義。
3.括號裏面傳遞的是函數的參數,該參數在函數中都可以使用。
4.sum(a, b)在執行的時候就把a和b傳遞給了sum函數
5.return是代表當我們調用函數的時候返回的結果,調用函數返回兩個數的和,c = a + b
6.最後打印c的值
2.函數參數的不同方法
2.1參數設定一個默認值,如果實參沒有傳入數值,則使用默認值,如果傳入了數值,則使用傳入的實參數值。
def funcA(a, b=0): print(a) print(b) funcA(1) funcA(1, 10)
結果:
1 0 1 10
2.2參數爲tuple
def funcD(a, b, *c): print a print b print "length of c is: %d " % len(c) print c funcD(3, 4, 5, 6, 7, 8)
結果:
3 4 length of c is: 4 (5, 6, 7, 8)
2.3參數爲dict
def funcF(a, **b): print(a) print(b) for x in b: print x + ": " + str(b[x]) funcF(100, x="hello", y="nihao")
結果:
100 {'y': 'nihao', 'x': 'hello'} y: nihao x: hello
3.函數的調用
1.
funcF(100, x="hello", y="nihao")
結果:
100 {'y': 'nihao', 'x': 'hello'} y: nihao x: hello
2.
args = {"x": "hello", "y": "nihao"} funcF(100, **args)
結果:
100 {'y': 'nihao', 'x': 'hello'} y: nihao x: hello