Python2語法簡記(7):函式
阿新 • • 發佈:2018-12-13
7 函式:def printme(str1, str2):
def printme(str1, str2):
"列印傳入的字串" # 函式的第一行語句可以選擇性地使用文件字串—用於存放函式說明。
print str1, str2
return str1, str2 # return只能返回一個值,可以是任何型別。寫成這樣是返回一個元祖,間接實現了返回多個值。
不可變物件傳入函式:不能改變物件值
def ChangeInt(a): # 呼叫函式剛開始時,id(a) == id(b),a引用的是數字2物件。 a = 10 # 由於a引用的是不可變物件,所以這時候a改為了引用數字10物件。id(a) != id(b) b = 2 ChangeInt(b) print b # 結果是 2。b還是引用數字2物件。
引數傳入方式:順序傳入、關鍵字傳入、預設引數傳入、不定長引數def printme(str1, *vartuple)
順序傳入:
def Printme(a):
print a
Printme(2)
關鍵字傳入:
def Printme(a, b):
print a
print b
Printme(b = 2, a = 1)
預設引數傳入:
def Printme(a, b = 0): print a print b Printme(a = 2) Printme(4) Printme(4, 5)
不定長引數:
def Printme(a, *vartuple):
print a
for var in vartuple: print var
Printme(4, 5, 6,7)
匿名函式:lambda表示式:sum = lambda arg1, agr2 : arg1 + arg2; print sum(10, 20)
python 使用 lambda表示式 來建立匿名函式。只包含一個語句。不能訪問自有引數列表之外或全域性名稱空間裡的引數。
sum = lambda arg1, arg2: arg1 + arg2; print "相加後的值為 : ", sum( 10, 20 ) print "相加後的值為 : ", sum( 20, 20 )