什麼是函數?
執行特定任務用以完成特定功能的一段代碼。
為什麼需要使用函數?
1)提高代碼的複用性
2)隐藏實現細節
3)提高可維護性
4)提高代碼可讀性(便于維護調試)
函數的創建方式如下圖:
# 自定義函數 [a,b稱為形式參數,簡稱形參。形參的位置是在函數的定義處]
def calc(a,b):
c = a b
return c
# [10,20稱為實際參數的值,簡稱實參。實參的位置是函數的調用處]
result = calc(10,20)
print('函數運行結果為:',result)
位置實參:根據形參對應的位置進行實參傳遞
關鍵字實參:根據形參名稱進行實參傳遞
# [=左側的變量名稱稱為 關鍵字參數]
result_ = calc(b=10,a=20)
print('函數運行結果為:',result_)
# 自定義函數
def fun(arg1,arg2):
print('參數1:','arg1',arg1,'\t','參數2:','arg2',arg2)
arg1 = 100
arg2.append(10)
print('參數1:','arg1',arg1,'\t','參數2:','arg2',arg2)
# return
# 如果函數參數是不可變對象,在函數中的操作不會影響實際參數的值。如:arg1值修改為100,實際參數值n1沒有發生改變;
# 如果函數參數是可變對象,在函數中的操作會影響實際參數的值。如:arg2值.append(10),實際參數值n2發生改變;
n1 = 11
n2 = [22,33,44]
初始實際參數值: n1 11 n2 [22, 33, 44]
print('初始實際參數值:','n1',n1,'\t','n2',n2)
# 函數調用 [位置傳參;arg1,arg2:函數定義的形參;n1,n2:函數調用的實參;(實參名稱與形參名稱可以不一緻)]
fun(n1,n2)
調用函數後實際參數值: n1 11 n2 [22, 33, 44, 10]
print('調用函數後實際參數值:','n1',n1,'\t','n2',n2)
函數的返回值
(1)函數沒有返回值:【函數執行完畢後,不需要給調用處提供數據】 return可以省略不寫
(2)函數有返回值:【如果隻有一個值,直接返回原數據類型;如果有多個值,返回的結果為元組】
# 自定義函數
def fun(num):
odd = [] # 存奇數
even = [] # 存偶數
for i in num:
if i%2:
odd.append(i)
else:
even.append(i)
return odd,even
# 函數的調用
lst = [10,29,34,23,56,42,73]
# 調用函數後的返回值: ([29, 23, 73], [10, 34, 56, 42])
print('調用函數後的返回值:',fun(lst))
函數定義時,給形參設置默認值,隻有與默認值不符合時才需要傳遞實參
# 自定義函數 b=10稱為默認值參數
def fun(a,b=10):
print('函數調用後輸出結果:',a,b)
# 函數的調用
fun(100)
fun(20,30)
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!