PythonÌṩÁ˺ܶàÄÜʵÏÖ¸÷ÖÖ¹¦ÄܵÄÄÚÖú¯Êý¡£ÄÚÖú¯Êý£¬¾ÍÊÇÔÚpythonÖб»×Ô¶¯¼ÓÔØµÄº¯Êý£¬ÈκÎʱºò¶¼¿ÉÒÔʹÓá£ÏÂÃæÎÒÃǽéÉÜmapº¯ÊýµÄÓ÷¨ºÍ×÷Óãº
mapº¯Êý»á¸ù¾ÝÌṩµÄº¯Êý¶ÔÖ¸¶¨µÄÐòÁÐ×öÓ³Éä¡£mapº¯ÊýµÄ¶¨ÒåÈçÏÂ:
map(function, iterable, …)
ÔÚÉÏÊö¶¨ÒåÖÐ,µÚÒ»¸ö²ÎÊýfunction±íʾµÄÊÇÒ»¸öº¯ÊýÃû£¬µÚ¶þ¸ö²ÎÊýiterable¿ÉÒÔÊÇÐòÁС¢Ö§³ÖÑ¡´úµÄÈÝÆ÷»òÑ¡´úÆ÷¡£µ±µ÷ÓÃmapº¯Êýʱ£¬iterableÖеÄÿ¸öÔªËØ¶¼»áµ÷ÓÃfunctionº¯Êý£¬ËùÓÐÔªËØµ÷ÓÃfunctionº¯Êý·µ»ØµÄ½á¹û»á±£´æµ½Ò»¸öµü´úÆ÷¶ÔÏóÖС£¡¾ÍƼöÁ˽⣺python+È˹¤ÖÇÄܿγ̡¿
ÕâÀï˵Ã÷һϣ¬ÔÚPython2ÖУ¬mapº¯ÊýµÄ·µ»ØÖµÊÇÁбílistÀàÐÍÈç¹ûÏ£Íû½«Ñ¡´úÆ÷¶ÔÏóתΪÁÐ±í£¬Ôò¿ÉÒÔͨ¹ýlistº¯Êý½øÐÐת»»¡£´ËÍ⣬»¹¿ÉÒÔʹÓÃforÑ»·Ö±½Ó±éÀúµü´úÆ÷¶ÔÏ󣬴ӶøÈ¡³öÆäÄÚ²¿µÄÿ¸öÔªËØ¡£Ê¾Àý´úÂëÈçÏÂ:
func = lambda x:x+2
result = map(func, [1, 2, 3, 4, 5]
print(list(ruslt))
ÉÏÊöʾÀýÖÐ,¶¨ÒåÁËÒ»¸öÄäÃûº¯Êýfunc£¬·µ»ØÄ³¸öÊý¼Ó2ÒÔºóµÄ½á¹û£¬½Ó×ŵ÷ÓÃmapº¯Êý½«[1,2,3,4,5]ÖеÄÿ¸öÔªËØÈ¡³öÀ´£¬×÷ΪfuncµÄ²ÎÊýµ÷ÓÃfuncº¯Êý£¬Ö®ºó½«½á¹ûת»»ÎªÁбíµÄÐÎʽÏÔʾ¡£
³ÌÐòÊä³öµÄ½á¹ûΪ:
[3, 4, 5, 6, 7]
Èç¹ûmapº¯ÊýÖд«ÈëµÄ unctionº¯Êý´øÓÐÁ½¸ö²ÎÊý,ÄÇômapº¯ÊýÐèÒª´«µÝÁ½¸öÐòÁÐÀý´úÂëÈçÏ¡£
result = map(lambda x, y: x+y, [1, 2, 3], [4,5,6])
print(list(result))
# ½á¹ûΪ
[5, 7, 9]
ÔÚ Python3ÒÔǰ£¬Èç¹ûµ÷ÓÃmapº¯Êýʱ´«ÈëµÄ function²ÎÊýΪNone£¬ÔòÏ൱ÓÚ½«ÐòÁÐÖжÔӦλÖõÄÔªËØºÏ²¢³ÉΪԪ×顣ʾÀý(Phon2.7)´úÂëÈçÏÂ:
result = map(None, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
print result
# Êä³ö½á¹û
[(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
Èç¹ûÁ½¸öÐòÁеÄÔªËØ¸öÊý²»Ò»Ö£¬ÄÇÃ´ÔªËØÉÙµÄÐòÁлáÒÔNone²¹Æë¡£Ê¾Àý£¨Python 2.7£©´úÂëÈçÏ£º
¡¾²å²¥¸£Àû£ºÀÖÓã²¥¿Í2019python½Ì³ÌÈ«¼¯¡¿
result = map(None, [1, 3, 5, 7, 9], [2, 4, 6])
print result
# ½á¹ûΪ
[(1, 2), (3, 4), (5, 6), (7, None), (9, None)]
ÔÚ Python3ÒԺ󣬵±map´«ÈëµÄº¯ÊýΪNoneʱ£¬¾ÍµÈͬÓÚzipº¯Êý£¨ÓÃÓÚ½«¿Éµü´úµÄ¶ÔÏó×÷Ϊ²ÎÊý£¬½«¶ÔÏóÖжÔÓ¦µÄÔªËØ´ò°ü³ÉÒ»¸ö¸öÔª×飬Ȼºó·µ»ØÓÉÕâЩԪ×é×é³ÉµÄÁÐ±í£©µÄ¹¦ÄÜ£¬²¢ÇÒÒѾzipº¯ÊýÈ¡´úÁË¡£ÁíÍ⣬mapº¯ÊýÎÞ·¨´¦ÀíÁ½¸öÐòÁг¤¶È²»Ò»Ö¡¢¶ÔӦλÖòÙ×÷ÀàÐͲ»Ò»Ö£¬ËüÃǶ¼»á±¨´íÀàÐÍ´íÎó¡£
±¾ÎÄÀ´×Ô£ºÀÖÓã²¥¿Í python+È˹¤ÖÇÄÜѧԺ python.itcast.cn