一.函數的定義
重複利用的工具
可以完成特定功能的代碼塊,函數就是存放代碼塊的容器
二、函數的語法
函數四部分
- 函數名:使用該函數的依據
- 函數體:完成功能的代碼塊
- 返回值:功能完成的反饋結果
- 參數:完成功能需要的條件信息
用def關鍵詞來聲明函數
def 函數名(參數們):
函數體
return '返回值'
三、使用函數
函數名:拿到函數的地址
函數名(): 拿到函數的地址,並執行函數中存放的代碼塊(函數體) *****
函數名(參數):執行函數並傳入參數
函數名(): 執行完畢後,會得到函數的返回值,返回值就跟普通變量一樣,可以直接打印、使用、運算
def fn(num):
print("傳入的num值:%s" % num)
return '收到了'
res = fn(10) # 控制檯會打印:傳入的num值:10 res的值爲:'收到了'
注:函數一定要先定義在調用
四、函數的分類
1.根據參數列表劃分
無參函數:不需外界資源
def start():
print('系統啓動')
start()
有參函數:需要外鍵資源
def login(usr, pwd):
if usr == 'owen' and pwd == '123':
print('登錄通過')
else:
print('登錄失敗')
login('owen', '123')
2.根據返回值劃分
return是用來結束函數的
空返回:返回None
def demo(x, y):
print( x + y )
def demo(x, y):
print( x + y )
return # 用來強行結束函數的(像break結束循環一樣)
單值返回
def demo(x, y):
return x + y
多值返回
def demo(x, y):
return x + y, x - y, x * y, x / y # 本質就是返回裝有多個值的元組
五、函數的嵌套調用
例子
# 求兩個數最大值
def max_2(n1, n2):
if n1 > n2:
return n1
return n2
求三個數最大值
def max_3(n1, n2, n3):
m2 = max_2(n1, n2)
return max_2(m2, n3)
求四個數最大值
def max_4(n1, n2, n3, n4):
m2 = max_2(n1, n2)
return max_3(m2, n3, n4)
循環調用:在一個函數的內部調用另一個函數