学习
实践
活动
工具
TVP
写文章

Python的sum、map、filter和reduce

最近在看《Think Python》(英文版),看到了讲解,,等函数,觉得讲解的思路特别好。所以,我加上了自己的理解,写了本篇文章。

引子

如果要对列表中的数字求和,我们可以这样做:

运行结果:

由于python中求和操作太常见了,所以python提供了内置函数来进行这项操作

sum

将上一版代码修改如下:

运行结果:

像这种从一个列表中得出一个结果的操作,也叫reduce,除了求和这一种reduce操作外,python还支持自定义的方式

比如,我不是想对队列求和,而是想得到列表各数字的乘积,可以利用这样实现:

运行结果:

上面介绍了将一个从一个列表得到一个结果的情形,还有一种情形是:按照某个规律对列表中的元素一一转换,这就要用到内置函数了

如果给定一个列表(元素为字符串),要把列表元素首字母大写,可以这样做

运行结果:

还有一种情况,是要将列表里的元素过滤出去,可以用到函数

给定一个列表(元素为数字),如果要仅保留不大于4的数字,可以这样做:

运行结果:

获取《Think Python》(英文版)电子书

本文作者: Yarving Liu

本文链接:http://yarving.historytale.com/2018/06/05/python-sum-map-filter-reduce/

版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0许可协议。转载请注明出处!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180607G0QBUF00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券