1. 定義函數(shù)的使用:def 函數(shù)名(參數(shù)):
函數(shù)體
[return返回值]
函數(shù)可以不包含任何參數(shù),但是函數(shù)名后的一對括號是不能省略的。
函數(shù)可以帶若干個參數(shù),參數(shù)可以有缺省值。
2.在編程語言中,函數(shù)定義時用的是形參,調(diào)用時用的是實參
形參:
全稱為"形式參數(shù)"
,不是實際存在的變量,又稱虛擬變量。形參是在定義
函數(shù)名和函數(shù)體的時候使用的參數(shù),目的是用來接收調(diào)用該函數(shù)時傳入的參數(shù)。實參:
全稱為"實際參數(shù)"
,是在調(diào)用
時傳遞給函數(shù)的參數(shù)。實參可以是常量、變量、表達式、函數(shù)等。無論實參是何種類型的量,在進行函數(shù)調(diào)用時,它們都必須具有確定的值,以便把這些值傳送給形參。一一對應
,并且實參必須要有確定的值
。形參的作用域一般僅限函數(shù)體內(nèi)部,而實參的作用域根據(jù)實際設置而定。3.缺省值:就是默認值。是指一個屬性、參數(shù)在被修改前的初始值。計算機軟件系統(tǒng)要求用戶
輸入某些值而用戶未給定時,系統(tǒng)自動賦予的事先設定的數(shù)值。
上述代碼中,函數(shù)func_example()定義處的a_list、an_int和a_string就是形式參數(shù),函數(shù)體外定義的變量my_list和my_int是實際參數(shù)。
my_list和my_int是對函數(shù)的調(diào)用,而函數(shù)中因直接對an_int和a_string賦值,所以相當于實參。而a_list.append("A new item")是對定義中a_list參數(shù)進行插入"A new item"
定義an_int為2,但函數(shù)下又對其賦值為4,所以在my_int調(diào)用函數(shù)時,無論賦值為幾,經(jīng)函數(shù)調(diào)用后都對其賦值為4.
可以看到把實參my_list和my_int傳入函數(shù)體后,就把相應的值賦值給了形參a_list、an_int。形
參a_list和an_int的作用域只限于func_example()函數(shù)體內(nèi),而實參作用域a_list、an_int則根據(jù)外部調(diào)用處的設置而定。
對于函數(shù)形參列表,默認情況下函數(shù)調(diào)用時的參數(shù)值與參數(shù)列表聲明中定義的順序是一致。
Python語言也允許函數(shù)調(diào)用時參數(shù)順序與聲明時不一致,即顯示指明關(guān)鍵字參數(shù),并根據(jù)參數(shù)
的指定進行賦值。
聯(lián)系客服