基本函數格式
帶有參數的函數格式
帶有默認值的參數
關鍵字參數
收集參數(帶*)
多種參數混合
(1) 基本函數格式:def 函數名(): 函數功能代碼... 函數功能代碼... ...調用函數: 函數名()
>>> def hello() : print("Hello World!")>>> hello()Hello World!>>>
(2) 帶有參數的函數格式:def 函數名(參數,參數...): 函數功能代碼... 函數功能代碼... ...調用函數:函數名(參數,參數...)形參:形式上的參數,聲明函數時()中的參數是形參實參:實際上的參數,調用函數時()中的參數是實參
注意:實參將值傳遞給形參的過程本質上就是簡單的變量賦值僅此而已
def area(width, height): return width * height
def print_welcome(name): print("Welcome", name)print_welcome("Python")w = 4
h = 5
print("width =", w, " height =", h, " area =", area(w, h))
Welcome Pythonwidth = 4
height = 5
area = 20
def printme( str ): "列印任何傳入的字符串" print (str);
return;
printme();
Traceback (most recent call last): File "test.py", line 10, in <module> printme();TypeError: printme() missing 1 required positional argument: 'str'
(3) 帶有默認值的參數def 函數名(形參=默認值,形參=默認值...): 函數功能代碼... 函數功能代碼... ...調用函數: 函數名() 調用函數時所有形參採用默認值操作 函數名(實參,實參...) 調用時形參使用實參的值而拋棄默認值
def printinfo( name, age = 35 ): "列印任何傳入的字符串" print ("名字: ", name);
print ("年齡: ", age);
return;
printinfo( age=50, name="runoob" );
print ("----")printinfo( name="runoob" );
名字: runoob年齡: 50----名字: runoob年齡: 35
(4) 關鍵字參數:def 函數名(形參=默認值,形參=默認值...): 函數功能代碼... 函數功能代碼... ...調用函數:函數名(形參=實參,形參=實參...)
關鍵字參數就是調用函數時,在實參前面指定形參的做法,為了防止參數按照位置傳遞出現的錯誤
關鍵字參數和函數調用關係緊密,函數調用使用關鍵字參數來確定傳入的參數值。
使用關鍵字參數允許函數調用時參數的順序與聲明時不一致,因為 Python 解釋器能夠用參數名匹配參數值。
以下實例在函數 printme() 調用時使用參數名:
def printme( str ): "列印任何傳入的字符串" print (str); return;
printme( str = "Python教程");
Python教程
def printinfo( name, age ): "列印任何傳入的字符串" print ("名字: ", name);
print ("年齡: ", age);
return;
printinfo( age=50, name="runoob" );
名字: runoob年齡: 50
(5). 收集參數:def 函數名(*參數名): 函數功能代碼... 函數功能代碼... ...調用函數:函數名(實參,實參...) 沒有數量限制
def printinfo( arg1, *vartuple ): "列印任何傳入的參數" print ("輸出: ")
print (arg1)
for var in vartuple:
print (var)
return;
printinfo( 10 );printinfo( 70, 60, 50 );
輸出:10輸出:706050
def 函數名(**參數名): 函數功能代碼... 函數功能代碼... ...調用函數: 函數名(形參=實參,形參=實參...) 沒有數量限制
def func(country,province,**kwargs): print(country,province,kwargs)
func("China","Sichuan",city = "Chengdu", section = "JingJiang")
格式: def 函數名(參數....): 函數功能代碼... 函數功能代碼... ... [return 語句]
return的特徵:
1.具有return語句的函數稱為具有返回值的函數
2.return可以為當前函數執行完畢返回一個結果,這樣的函數調用可以被接受
3.return執行之後,函數則會終止,所有return之後的語句不會被執行
4.一個函數可以書寫多個return語句,但是一般會放入分支結構當中。
5.一個函數如果需要返回多個數據,需要藉助複合數據類型(list,tuple,set,dict)來操作即可!
6.不帶參數值的return語句返回None。之前的例子都沒有示範如何返回數值.
def sum( arg1, arg2 ): total = arg1 + arg2
print ("函數內 : ", total) return total;
total = sum( 10, 20 );
print ("函數外 : ", total)
函數內 : 30函數外 : 30
相關文章:
以下文章是本公眾號至本文發出前已經發布的Python基礎教程系列教程,
可點擊按順序瀏覽,逐步進階學習
Python 基礎全套教程 :01環境的安裝和使用
Python基礎教程全套:02Python基礎語法與規範
Python基礎教程全套:03Python運算符
Python基礎教程全套:4.1Python語言中的數字、字符串數據類型講解
Python基礎教程全套:4.2列表,元組,集合,字典數據類型講解
Python基礎教程全套:4.3Python數據類型轉換函數的使用
Python基礎全套教程 5:Python的分支結構講解
Python基礎教程全套6.1:Python循環結構
Python基礎教程全套 6.2:循環結構中的for循環結構
Python基礎教程全套6.3:range()函數用法
Python基礎教程全套6.4:break和continue語句