"""函式的引數傳遞方法演示
"""#
1.位置傳參
defnormal(a, b, c):
print("
1.位置傳參:")
return
a, b, c
print(normal(1, 2, 3))
#return 返回值:
#return什麼都不寫或者乾脆不寫return。那麼返回的就是none
#return後面寫了乙個值,則呼叫者可以接收乙個結果
#return後面寫了多個結果,則呼叫者可以接收乙個tuple,呼叫者可以直接解構成多個變數
#所以演示結果都是tuple的形式,**kwords傳參除外
#2.關鍵字引數
defkeys(a, b, c):
print("
2.關鍵字傳參:")
return
a, b, c
print(keys(a=1, c=2, b=3)) #
此處a,b,c 的順序可變,引數中等號可以不空格分開。
#3.位置引數和關鍵字引數混合使用
defnor_key(a, b, c):
print("
3.位置引數和關鍵字引數混合使用:")
return
a, b, c
print(nor_key(1, b=2, c=3))
#4. *號傳參:一次想要傳入很多引數,就用形如「*a」的形式
#函式內呼叫的時候只需要呼叫「a」就可以
def more_argu(*a):
print("
4.*號傳參:")
return
aprint(more_argu(1, 2, 3, "
a", "
haha
", [1, 2, 3,4], , ))
#5.位置引數/關鍵字引數/*號一起使用
def nor_key_more(a, b, *c, d):
print("
5.位置引數/關鍵字引數/*號傳參:")
return
a, b, c, d
print(nor_key_more(1, 2, 1, 2, 3, "
a", "
haha
", [1, 2, 3,4], d=2)) #
位置引數要在*之前,關鍵字引數在*之後
#6.**kwords: 形如「**kwords」形式的傳參,函式在接收時,會自動轉換為鍵值對(字典)形式
#傳參時,也必須傳入形如「a=1, b=2, c=3」
def other(**a):
print("
6.**kwords傳參:")
return
aprint(other(a=1, b=2, c=3, d=456, e=(1, 2, 3)))
python:函式的引數傳遞方法演示
執行結果如下
1.位置傳參:(1, 2, 3)
2.關鍵字傳參:
(1, 3, 2)
3.位置引數和關鍵字引數混合使用:
(1, 2, 3)
4.*號傳參:
(1, 2, 3, '
a', '
haha
', [1, 2, 3, 4], , )
5.位置引數/關鍵字引數/*號傳參:
(1, 2, (1, 2, 3, '
a', '
haha
', [1, 2, 3, 4]), 2)
6.**kwords傳參:
慢慢感覺大腦不夠用了,希望每天堅持下去,一點一點積累。盡可能的寫的詳細點,做個筆記,
Python的函式引數傳遞
原址 我想,這個標題或許是很多初學者的問題。尤其是像我這樣的對c c 比較熟悉,剛剛進入python殿堂的朋友們 c c 的函式引數的傳遞方式根深蒂固的影響這我們的思維 引用?傳值?究竟是那種呢。呵呵,語言的特性決定了是使用的方法,那麼,現在我們來 一下python的函式引數傳遞方式。在開始之前,我...
Python的函式引數傳遞
看兩個例子 a 1 deffun a a 2 fun a print a 1a deffun a fun a print a 1 所有的變數都可以理解是記憶體中乙個物件的 引用 或者,也可以看似c中void 的感覺。a 1 deffun a print func in id a func in 41...
Python的函式引數傳遞
看兩個例子 python a 1 def fun a a 2 fun a print a 1 a 1 def fun a a 2 fun a print a 1 python a def fun a fun a print a 1 所有的變數都可以理解是記憶體中乙個物件的 引用 或者,也可以看似c中...