9 1函式引數的操作和返回值

2021-10-16 05:21:01 字數 3760 閱讀 8581

實際引數傳遞給形式引數的操作方式,就是引數的操作

實際引數,安裝形式引數宣告的前後順序,依次賦值的過程

# 引數的操作

defshow

(name,age,height)

:print

(f"姓名:, 年齡:,身高:"

)# 位置引數

show(

"dongai",18

,"185"

)

實際引數進行資料傳遞時,將實際引數直接賦值給形式引數變數,提高**可讀性

# 關鍵字引數

defshow

(name,age,gender)

:print

(f"姓名:,年齡:,性別:"

)

show(name=

"dongai"

,gender=

"man"

,age=

20)

形式引數宣告時候,可以直接給形式引數賦值(預設值),如果呼叫函式時不給帶有預設值的形式引數傳遞資料,該形式引數就會使用預設值.如果傳遞了實際引數,就會使用傳遞的實際引數.(預設值引數,要寫在位置引數的後面)

# 預設值引數

defshow

(name,age,gender=

"man"):

print

(f"姓名:,年齡:,性別:"

)show(name=

"dongai"

,age=20)

show(name=

"dongai"

,gender=

"girl"

,age=

20)

可變引數,當函式不確定要接收引數的個數時,可以使用可變引數進行操作.

可變引數將乙個普通引數前面新增乙個"*",將普通引數變為可變引數

# 可變引數

defshow

(name,age,

*information)

:print

(f"姓名:,年齡:"

)print

(information)

show(

"dongai",20

)show(

"dongai",20

,"girl"

)# information("girl")

show(

"dongai",20

,"girl"

,1.85

)# information("girl",1.5)

show(

"dongai",20

,"girl"

,1.85

,100

)# information("girl",1.85,100)

可變引數再函式呼叫時,傳遞的實際引數需要約定他們的使用用途,對於**的可讀性並不是很友好,python提供了可變關鍵字引數提高**的可讀性

#可變關鍵字引數

defshow

(name,age,

**information)

:print

(f"姓名:,年齡:"

)print

(information)

show(

"dongai",20

)show(

"dongai",20

,gender=

"male"

)# information("gender"="male")

函式呼叫執行的過程中,必須按照形式引數的名稱,按照key = value的形式傳遞資料

# 強制關鍵字引數

defshow

(name,

*,age,height)

:print

(f"姓名:, 年齡:,身高:"

)# 位置引數

show(

"dongai"

,age=

18,height=

"185"

)

函式呼叫過程中,不明確需要多少個位置引數,需要多少個關鍵字引數

通過python的引數語法,指定接收所有引數

[引數語法:(*args,**kwargs)

# 萬能引數

defshow

(*args,

**kwargs)

:print

("arguments(引數):"

,args)

print

("keyword(關鍵字) arguments(引數):"

,kwargs)

show(

"dongai"

,age=

20)

函式引數:形式引數(變數宣告)和實際引數(包含了具體資料)

實際操作過程中,根據資料從實際引數傳遞到形式引數的方式的不同

def

pay(price,count)

: res = price * count

return res

total = pay(

15.88,7

)print

(f"列印小票:付款¥"

)#列印小票:付款¥111.16000000000001

# 保留小數點後兩位

print

(f"列印小票:付款¥%.2f"

%total)

# 列印小票:付款¥111.16

def

pays

(price,count)

: pay = price * count

money =

float

(input

(f"請輸入您的付款金額(應付¥:"))

if money > pay:

# 計算餘額

balance = money-pay

# 找零

print

(f"找您¥%.2f"

%balance)

# 返回資料

return

else

:input

("支付金額不足,重新購買"

)return

false

pays(price=

15.88

,count=

10)

函式被允許直接返回多個資料,呼叫函式的時候,可以使用1個或者多個變數進行接收

def

pays

(price,count)

: pay = price * count

money =

float

(input

(f"請輸入您的付款金額(應付¥:"))

if money > pay:

# 計算餘額

balance = money-pay

# 找零

print

(f"找您¥%.2f"

%balance)

# 返回資料

return count,price

else

:input

("支付金額不足,重新購買"

)return

false

# 呼叫執行函式

prices,counts = pays(price=

12,count=

4)

python 函式 引數 返回值

函式 function 也叫方法 method 是一組可以重複使用的 段。函式分為內部函式和使用者自定義函式。內部函式就是程式語言已經寫好了,使用者無序定義就能直接呼叫的函式,比如說len str print 等,但是這些函式還遠不能滿足實際開發,故使用者可以自定義函式。函式的結構是 def 函式名...

函式 引數 返回值 遞迴

函式 函式表示式就是忽略名字 1 函式宣告 function onname 2 命名函式表示式 var test function abc 3 匿名函式表示式 var demo function 因為匿名函式表示式比較常用,所以說函式表示式一般是指匿名函式表示式 引數 形式引數 沒有實際傳值 實際引...

函式引數和函式返回值

思考乙個問題,如下 現在需要定義乙個函式,這個函式能夠完成2個數的加法運算,並且把結果列印出來,該怎樣設計?下面的 可以嗎?有什麼缺陷嗎?def add2num a 11 b 22 c a b print c為了讓乙個函式更通用,即想讓它計算哪兩個數的和,就讓它計算哪兩個數的和,在定義函式的時候可以...