def
funx
(x,y,z)
:print
(x,y,z)
funx(1,
'hello'
,true
)#位置引數
funx(z=
'he'
,y='is'
,x='boy'
)#關鍵字引數
執行結果:f
:\untitled2\venv\scripts\python.exe f
:/untitled2/chinese/demo1.py
1 hello true
boy is he
*,**支援任意你輸入的數
需要注意:
在定義函式時,*和**是收集引數
( def fun(*args,**kwargs),arge,kwargs這2個量可以變,不過一般習慣使用這2個量)
在呼叫函式時,*和**是對引數解包
(fun(*args,**kwargs)
例項:
def fun
(x,y,z,
*args,
**kwargs):
print
(x,y,z)
print
(args)
print
(kwargs)
# 函式呼叫
fun(1,
3,4,
5,6,
7,4,
2)fun(1,
2,3,a=
1,b=
'adc'
,c='hello'
)
#fun(1,3,4,5,6,7,4,2)13
4(5,
6,7,
4,2)
# x=1,y=3,z=4,*args保留元組。即(5, 6, 7, 4, 2),*kwargs保留字典,而未輸入字典有關的量,故{}
#fun(1,2,3,a=1,b='adc',c='hello')12
3()#x=1,y=2,z=3,*args保留元組,除去x,y,z剩下的數。即(),*kwargs保留字典即
說明:定義函式語法
說明def func(a,b)
常規引數
def func(a=1,b=『abc』)
預設引數
def func(,a,b,*args)
用元組收集除a,b的位置引數
def func(a,b,**kwargs)
用字典收集的關鍵字引數
def fun(*args,**kwargs
分別收集位置引數和關鍵字引數
呼叫函式語法
說明func(a,b)
按照位置進行匹配
func(name=value』)
按照關鍵字(變數名)匹配
func(*list)
把list 打散,作為位置引數傳遞
func(**dict)
把字典打散,作為關鍵字引數傳遞
fun(*args,**kwargs
位置引數和關鍵字引數分別傳遞
函式式程式語言python 函式式程式設計
函式是python內建支援的一種封裝,我們通過把大段 拆成函式,通過一層一層的函式呼叫,就可以把複雜任務分解成簡單的任務,這種分解可以稱之為面向過程的程式設計。函式就是面向過程的程式設計的基本單元。而函式式程式設計 請注意多了乙個 式 字 functional programming,雖然也可以歸結...
函式和函式式程式設計
python的過程就是函式,因為直譯器會隱式地返回預設值none。實際程式設計中大部分偏函式更接近過程,不顯示地返回任何東西。當沒有顯示地返回元素或者如果返回none時,python會返回乙個none。元組 字典 def子句的剩餘部分包括了乙個雖然可選但是強烈推薦的文件字串和必須的函式體。函式的子句...
python中的函式式程式設計
python內建了map 和reduce 函式 map map 函式接收兩個引數,乙個是函式,乙個是iterable,map將傳入的函式依次作用到序列的每個元素,並把結果作為新的iterator返回 def f x return x x r map f,1,2,3,4,5 print list r ...