life is short ~python中建立乙個函式有關鍵字def
def
hello
(name):
print
"hello",name
這樣就是乙個函式啦,說說引數有哪幾種方式:
tips:
1.函式內為引數賦新值不會改變外部的任何變數
2.函式內的變數最好跟外部的變數名字不同
1.位置引數:上面的例子就是位置引數
2.關鍵字引數:見名知意會有關鍵字
3.收集引數:乙個引數接受多個值相當於 argv(from sys import argv)
def
hello_again
(name,pre="mr."):
print
"hello",pre,name
result:
>>> hello_again("ashinlee")
hello mr. ashinlee
但是關鍵字引數要在位置引數後面,否則:
>>> def hello_again(pre="mr.",name,):
... print "hello",pre,name
... file "", line 1
syntaxerror: non-default argument follows default argument
當然關鍵字引數如果你給他賦值的話也是可以改變的,只是不賦值的時候給乙個預設值
收集引數需要在位置引數的後面:
def
hello_again
(name,pre="mr.",*num):
print
"hello",pre,name
for n in num:
print n
result:
>>> hello_again("ashinlee","miss",1,2,3,5,6)
hello miss ashinlee12
356miss???? 黑人問號.jpg 演示下關鍵字引數是可以改變的那只是不輸入的預設值
要注意的是如果關鍵字引數和收集引數混用,卻有不輸入關鍵字引數:
>>> hello_again("ashinlee",1,2,3,5,6)
hello 1 ashinlee23
56會出現和預期不符合的情況要注意
收集引數也可以收集關鍵字引數???
>>> def hello_again(name,*num,**age):
... print name
... print num
... print age
...result:
>>> hello_again("ashinlee",1,2,3,5,6,pre="mr.",***="male")
ashinlee
(1, 2, 3, 5, 6)
*num **age 位置不可調動
以上這些就是python的引數魔法啦。
python基礎(函式引數魔法,位置引數)
1.值從 來 定義函式時,你可能心存疑慮 引數的值是怎麼來的呢?編寫函式旨在為當前程式 甚至其他程式 提供服務,你的職責是確保它在提供的引數正確時完成任務,並在引數不對時以顯而易見的方式失敗。為此,通常使用斷言或異常。在def語句中,位於函式名後面的變數通常稱為形參,而呼叫函式時提供的值稱為實參。2...
Python中的魔法函式
在python中,乙個特殊的魔術方法call可以讓類的例項的行為表現的像函式一樣。允許乙個類的例項像函式一樣被呼叫。實質上說,這意味著 x 與 x.call 是相同的。注意call引數可變。這意味著你可以定義call為其他你想要的函式,無論有多少個引數。call在那些類的例項經常改變狀態的時候會非常...
python中引數 Python中的引數
python中的引數 1.python函式引數有多重形式 test arg1,arg2,args test arg1,arg2,args kwargs 2.其中比較糊弄人的是 args和 kwargs args 變長的佔位引數列表 kwargs 變長的鍵值對引數列表 3.什麼是佔位引數 test a...