ÔÚ½²Êöfilter£¬mapºÍreduce֮ǰ£¬Ê×ÏȽéÉÜÒ»ÏÂÄäÃûº¯Êýlambda¡£
lambdaµÄʹÓ÷½·¨ÈçÏ£ºlambda [arg1[,arg2,arg3,...,argn]] : expression
ÀýÈ磺
>>> add = lambda x,y : x + y
>>> add(1,2)
3
½ÓÏÂÀ´·Ö±ð½éÉÜfilter£¬mapºÍreduce¡£
1¡¢filter(bool_func,seq)£º´Ëº¯ÊýµÄ¹¦ÄÜÏ൱ÓÚ¹ýÂËÆ÷¡£µ÷ÓÃÒ»¸ö²¼¶ûº¯Êýbool_funcÀ´µü´ú±éÀúÿ¸öseqÖеÄÔªËØ£»·µ»ØÒ»¸öʹbool_seq·µ»ØÖµÎªtrueµÄÔªËØµÄÐòÁС£
ÀýÈ磺
>>> filter(lambda x : x%2 == 0,[1,2,3,4,5])
[2, 4]
filterÄÚ½¨º¯ÊýµÄpythonʵÏÖ£º
>>> def filter(bool_func,seq):
filtered_seq = []
for eachItem in seq:
if bool_func(eachItem):
filtered_seq.append(eachItem)
return filtered_seq
2¡¢map(func,seq1[,seq2...])£º½«º¯Êýfunc×÷ÓÃÓÚ¸ø¶¨ÐòÁеÄÿ¸öÔªËØ£¬²¢ÓÃÒ»¸öÁбíÀ´Ìṩ·µ»ØÖµ£»Èç¹ûfuncΪNone£¬func±íÏÖΪÉí·Ýº¯Êý£¬·µ»ØÒ»¸öº¬ÓÐÿ¸öÐòÁÐÖÐÔªËØ¼¯ºÏµÄn¸öÔª×éµÄÁÐ±í¡£
ÀýÈ磺
>>> map(lambda x : None,[1,2,3,4])
[None, None, None, None]
>>> map(lambda x : x * 2,[1,2,3,4])
[2, 4, 6, 8]
>>> map(lambda x : x * 2,[1,2,3,4,[5,6,7]])
[2, 4, 6, 8, [5, 6, 7, 5, 6, 7]]
>>> map(lambda x : None,[1,2,3,4])
[None, None, None, None]
mapÄÚ½¨º¯ÊýµÄpythonʵÏÖ£º
>>> def map(func,seq):
mapped_seq = []
for eachItem in seq:
mapped_seq.append(func(eachItem))
return mapped_seq
3¡¢reduce(func,seq[,init])£ºfuncΪ¶þÔªº¯Êý£¬½«func×÷ÓÃÓÚseqÐòÁеÄÔªËØ£¬Ã¿´ÎЯ´øÒ»¶Ô£¨ÏÈǰµÄ½á¹ûÒÔ¼°ÏÂÒ»¸öÐòÁеÄÔªËØ£©£¬Á¬ÐøµÄ½«ÏÖÓеĽá¹ûºÍÏÂÒ»¸öÖµ×÷ÓÃÔÚ»ñµÃµÄËæºóµÄ½á¹ûÉÏ£¬×îºó¼õÉÙÎÒÃǵÄÐòÁÐΪһ¸öµ¥Ò»µÄ·µ»ØÖµ£ºÈç¹û³õʼֵinit¸ø¶¨£¬µÚÒ»¸ö±È½Ï»áÊÇinitºÍµÚÒ»¸öÐòÁÐÔªËØ¶ø²»ÊÇÐòÁеÄÍ·Á½¸öÔªËØ¡£
ÀýÈ磺
>>> red
1. ʼþÇý¶¯
Ò»¸öʼþ¼°Æä»Øµ÷µÄÀý×ÓÊÇÊó±êÒÆ¶¯¡£ÎÒÃǼÙÉèÊó±êÖ¸ÕëÍ£ÔÚÄúGUI ³ÌÐòµÄij´¦¡£Èç¹ûÊó±ê±»ÒƵ½Á˳ÌÐòµÄ±ð´¦£¬Ò»¶¨ÊÇÓÐʲô¶«Î÷ÒýÆðÁËÆÁÄ»ÉÏÖ¸ÕëµÄÒÆ¶¯£¬´Ó¶ø±íÏÖÕâÖÖλÖõÄ×ªÒÆ¡£ÏµÍ³±ØÐë´¦ÀíÕâЩÊó±êÒÆ¶¯Ê¼þ²ÅÄÜÕ¹ÏÖ£¨²¢ÊµÏÖ£©Êó±êÔÚ´°¿ÚÉϵÄÒÆ¶¯¡£Ò»µ©ÄúÊÍ·ÅÁËÊó±ê£¬¾Í²»ÔÙ»áÓÐʼþÐèÒª´¦ ......
żȻÐèÒªÓõ½ÕâÑùÒ»¸öº¯Êý£¬ÔÚDelphiÖУ¬ÓÐÏֳɵĺ¯Êý¿ÉÒÔµ÷Óã¡ÔÚpythonÖУ¬ÎÒÕÒÁ˰ëÌì¶¼»¹Ã»ÕÒµ½£¬×îºó×Ô¼ºÐ´ÁËÒ»¸öº¯ÊýÈçÏ£º
def dayOfMonth(date):
if date.month == 12:
return 31
else:
return (date.replace(month=date.month+1, day=1) - datetime.timedelta(days=1)).day
......
ѧϰpython±¾¾ÍÊÇÒµÓàÖ®ºÃ£¡Ê鱾ɶµÄ£¬¶¼ÎÞ´Ó˵Æð¡£ËùÒÔż¶ûÅöµ½Ò»¸öºÃµÄÄ£¿é£¬¾ÍÒªÔÚ²©¿ÍÖмǼһÏ£¬ÒÔ±ãÈÕºóÖ®Óá£ÊÇÒÔ¸ßÊÖÖ±½ÓµÄÆ®¹ý¡£ÏÂÃæÇÐÈëÕýÌâ¡£
globÊÇpython×Ô¼º´øµÄÒ»¸öÎļþ²Ù×÷Ïà¹ØÄ£¿é£¬ÄÚÈÝÒ²²»¶à£¬ÓÃËü¿ÉÒÔ²éÕÒ·ûºÏ×Ô¼ºÄ¿µÄµÄÎļþ£¬¾ÍÀàËÆÓÚWindowsϵÄÎļþËÑË÷£¬¶øÇÒÒ²Ö§³ÖͨÅä·û£¬*,?,[]Õ ......