任何傳入引數和自變數必須放在圓括號中間。圓括號之間可以用於定義引數。
函式的第一行語句可以選擇性地使用文件字串—用於存放函式說明。
函式內容以冒號起始,並且縮排。
return [表示式] 結束函式,選擇性地返回乙個值給呼叫方。不帶表示式的return相當於返回 none。
可更改(mutable)與不可更改(immutable)物件
在 python 中,strings, tuples, 和 numbers 是不可更改的物件,而 list,dict 等則是可以修改的物件。
python 函式的引數傳遞:
不可變型別:類似 c++ 的值傳遞,如 整數、字串、元組。如fun(a),傳遞的只是a的值,沒有影響a物件本身。比如在fun(a)內部修改 a 的值,只是修改另乙個複製的物件,不會影響 a 本身,類似值傳遞。
可變型別:類似 c++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改後fun外部的la也會受影響,類似引用傳遞。
必備引數
必備引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣。
呼叫printme()函式,必須傳入乙個引數,不然會出現語法錯誤:
關鍵字引數
函式呼叫使用關鍵字引數來確定傳入的引數值。使用關鍵字引數允許函式呼叫時引數的順序與宣告時不一致,因為 python 直譯器能夠用引數名匹配引數值。
輸出結果說明使用關鍵字引數後,引數輸入順序並不重要
:"函式_文件字串"
python 模組(module),是乙個 python 檔案,以 .py 結尾,包含了 python 物件定義和python語句。模組能夠更有邏輯地組織 python **段,使得**更好用,更易懂。模組能定義函式,類和變數,模組裡也能包含可執行的**。
模組定義好後,使用 import 語句來引入模組
每個函式都有自己的命名空間。類的方法的作用域規則和通常函式的一樣。python 會猜測乙個變數是區域性的還是全域性的,它假設任何在函式內賦值的變數都是區域性的。因此,如果要給函式內的全域性變數賦值,必須使用 global 語句。global varname 的表示式會告訴 python, varname 是乙個全域性變數,這樣 python 就不會在區域性命名空間裡尋找這個變數。
例如在全域性命名空間裡定義乙個變數 money。再在函式內給變數 money 賦值,然後 python 會假定 money 是乙個區域性變數。
然而,並沒有在訪問前宣告乙個區域性變數 money,結果就是會出現乙個 unboundlocalerror 的錯誤。
取消 global 語句前的注釋符就能解決這個問題。
正確輸出結果:
根據呼叫地方的不同,globals() 和 locals() 函式可被用來返回全域性和區域性命名空間裡的名字。
如果在函式內部呼叫 locals(),返回的是所有能在該函式裡訪問的命名。
如果在函式內部呼叫 globals(),返回的是所有在該函式裡能訪問的全域性名字。
兩個函式的返回型別都是字典。所以名字們能用 keys() 函式摘取。
包是乙個分層次的檔案目錄結構,它定義了乙個由模組及子包,和子包下的子包等組成的 python 的應用環境。簡單來說,包就是資料夾,但該資料夾下必須存在init.py 檔案, 該檔案的內容可以為空。init.py 用於標識當前資料夾是乙個包。
#__init__.py**
if __name__ ==
'__main__'
:print
('作為主程式執行'
)else
:print
('package_yt 初始化'
)#yt1.py**
defyt1()
:print
("i'm in yt1"
)#yt2.py**
defyt2()
:print
("i'm in yt2"
)#main.py**
from package_yt.yt1 import yt1
from package_yt.yt2 import yt2
yt1(
)yt2(
)
python(五)函式 模組 包
模組 包的概念?在python中,乙個.py檔案就稱之為乙個模組 module 我們在編寫程式的時候,也經常引用其他模組,包括python內建的模組和來自第三方的模組 你也許還想到,如果不同的人編寫的模組名相同怎麼辦?為了避免模組名衝突,python又引入了按目錄來組織模組的方法,稱為包 packa...
Python基礎 函式 模組 導包
1.預設引數 呼叫時不需要傳參,更加方便 def get sum start 1,end 100 pass2.可變數量引數 數量可變 引數名稱 裝包,型別是元組 def test a,b,args,c 0 print a,b,args,c test 1,2,3,4,5,c 100 1 2 3,4,5...
python函式 模組
一 函式 函式是組織好的,可以重複利用,用來實現一定功能的 段。1 函式的組成部分 1 函式 塊以 def 關鍵字開始,後接函式名稱和括號 然後是冒號 2 任何傳入的引數和自變數必須放在 中 3 函式第一行語句可以寫注釋表明函式的功能 4 段,描述了函式實現的功能,需要縮排 5 return 表示式...