Python å½æ°å®ä¹ä»¥ååæ°ä¼ é
1.å½æ°å®ä¹
#å½¢å¦def func(args...):
doSomething123
以å
³é®ådef å¼å¤´ï¼åé¢æ¯å½æ°åååæ°ä¸é¢æ¯å½æ°å¤çè¿ç¨ã
举ä¾ï¼
def add( a, b ):
return a+b12
åæ°å¯ä»¥è®¾å®é»è®¤å¼ï¼å¦ï¼
def add( a, b=10 ): #注æï¼é»è®¤å¼åæ°åªä¼è¿ç®ä¸æ¬¡
return a+b12
é»è®¤å¼åæ°åªä¼è¿ç®ä¸æ¬¡æ¯ä»ä¹ææï¼
def func( a, b=[] ): #bçé»è®¤å¼æåä¸ä¸ªç©ºçå表ï¼æ¯æ¬¡ä¸å¸¦é»è®¤å¼é½ä¼æåè¿åå
å
b.append(a) return b
print(func(1))#åé»è®¤ç空å表éå å
¥å
ç´ 1 ï¼é»è®¤å表éå·²ç»æ¯[1]print(func(2))#åé»è®¤çå表éå å
¥å
ç´ 2,é»è®¤å表éå·²ç»æ¯[1,2]print(func(3,[]))#åbæåç空å表éå å
¥å
ç´ 1 ï¼é»è®¤å表éè¿æ¯[1,2]print(func(4))#åé»è®¤çå表éå å
¥å
ç´ 4,é»è®¤å表éå·²ç»æ¯[1,2,4]'''
ç»æï¼
[1]
[1, 2]
[3]
[1, 2, 4]
'''12345678910111213141516
è¿ä¸æç½ä¸ºä»ä¹é»è®¤åæ°åªè®¡ç®ä¸æ¬¡äºå§ï¼å½æ°åæ°ä¸ä¼ éæ¶é»è®¤å¼æ»æ¯æååºå®çå
å空é´ï¼å°±æ¯ç¬¬ä¸æ¬¡è®¡ç®ç空é´ã
2.åæ°ä¼ é
def func(a, b):
print('a=%d, b=%d' % (a,b) )12
å¨ä½¿ç¨å½æ°æ¶å¯ä»¥å¦ä¸æ¹å¼,ç»æé½æ¯ç¸åç
func(10,20) #ä¸ä½¿ç¨åæ°åï¼éè¦æåæ°é¡ºåºä¼ éfunc(a=10,b=20) #使ç¨åæ°åå¯ä»¥ä¸æ顺åºä¼ éfunc(b=20,a=10)#ç»æï¼a=10, b=20a=10, b=20a=10, b=201234567
å¦æå½æ°å®ä¹å½¢å¼å¦ä¸æ¹å¼ï¼
def func(*args): #è¿ç§å®ä¹ä¼æä¼ éçåæ°å
æ
å
ç»print(args,type(args))
func(10,20)#ç»æï¼#(10, 20) <class 'tuple'>1234567
举ä¸ä¸ªåä¸è¿°è¿ç¨ç¸åçä¾åï¼
def func(a,b):
print('a=%d, b=%d' % (a,b) )
a = (10, 20)
func(*a) #å¨è°ç¨å½æ°ä½¿ç¨`*`åä¼æå
ç»è§£å
æå个åéæ顺åºä¼ å
¥å½æ°#ç»æï¼a=10, b=20123456
æ»ç»ï¼*å·å¨å®ä¹å½æ°åæ°æ¶ï¼ä¼ å
¥å½æ°çåæ°ä¼è½¬æ¢æå
ç»ï¼å¦æ *å·å¨è°ç¨æ¶åä¼æå
ç»è§£å
æå个å
ç´ ã
å¦ä¸ç§å®ä¹ï¼
def func(**kw):#使ç¨**å®ä¹åæ°ä¼æä¼ å
¥åæ°å
è£
æåå
¸dict
print(kw, type(kw) )
func(a=10,b=20)#è¿ç§å½æ°å¨ä½¿ç¨æ¶å¿
é¡»æå®åæ°å¼ï¼ä½¿ç¨key=valueè¿ç§å½¢å¼#ç»æï¼{'b': 20, 'a': 10} <class 'dict'>12345
ç¸åçä¾åï¼
def func(a,b):
print('a=%d, b=%d' % (a,b) )
d = {'a':10, 'b':20 }
func(**d) #å¨è°ç¨æ¶ä½¿ç¨**ä¼æåå
¸è§£å
æåéä¼ å
¥å½æ°ã12345
def func(*args, **kw):#è¿ç§å½¢å¼çå®ä¹ä»£è¡¨å¯ä»¥æ¥åä»»æç±»åçåæ°
print(args,kw )12
æ»ç»ï¼**å·å¨å®ä¹å½æ°åæ°æ¶ï¼ä¼ å
¥å½æ°çåæ°ä¼è½¬æ¢æåå
¸ï¼å¦æ **å·å¨è°ç¨æ¶åä¼æåå
¸è§£å
æå个å
ç´ ã
lambda表达å¼
lambda表达å¼å°±æ¯ä¸ç§ç®åçå½æ°
å½¢å¦ f = lambda åæ°1ï¼åæ°2ï¼ è¿åç计ç®å¼
ä¾å¦ï¼
add = lambda x,y: x+y
print(add(1,2))'''
ç»æï¼3
'''12345