map()

map()函数
map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。

例1

print map(chr,range(97,123))

结果:


image.png

利用map()函数,可以把一个 list 转换为另一个 list,只需要传入转换函数。

由于list包含的元素可以是任何类型,因此,map() 不仅仅可以处理只包含数值的 list,#事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。

例2

# 注意:map()函数不改变原有的 list,而是返回一个新的 list。
u'''例如,对于list [1, 2, 3, 4, 5, 6, 7, 8, 9]
如果希望把list的每个元素都作平方,就可以用map()函数:
因此,我们只需要传入函数f(x)=x*x,就可以利用map()函数完成这个计算:
'''
def f(x):
    return x*x
print map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])
# 输出结果:
# [1, 4, 9, 10, 25, 36, 49, 64, 81]

例3

 假设用户输入的英文名字不规范,没有按照首字母大写,后续字母小写的规则,请利用map()函数,把一个list(包含若干不规范的英文名字)变成一个包含规范英文名字的list:
def format_name(s):
    s1=s[0:1].upper()+s[1:].lower();
    return s1;
print map(format_name, ['adam', 'LISA', 'barT'])
# 输出:['Adam', 'Lisa', 'Bart']
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Scala与Java的关系 Scala与Java的关系是非常紧密的!! 因为Scala是基于Java虚拟机,也就是...
    灯火gg阅读 8,821评论 1 24
  • 今天我们学了折千纸鹤。 首先我们先把正方形的纸折成三角形然后在展开,然后再把两个角对折往中间折,最后再把头和...
    韩梦荧阅读 3,180评论 0 0
  • 今天花了一天时间写了一篇设计概要,下班前发了出去,没一会儿,大胖就过来找我聊了,主要就是说文档是讲的不清晰,...
    Presage阅读 1,475评论 0 0
  • 钱有多重要,恐怕我不说大家也知道,轩爹从来年轻人不支持炫富,生活是自己的,拿出来炫耀实在没有必要,但也不鼓励拜金,...
    涅槃的轩爹阅读 4,671评论 19 21
  • 風笛蕭蕭向晚涼,清怨低訴,落地成霜。南歸大雁北辭行,仰望凝神,回首噙傷。 山水一程似也長,夢裏情懷,醒後文章。還將...
    蘭貭冰心阅读 1,748评论 1 9