博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 中 lambda, map, reduce 函数的简单使用
阅读量:6688 次
发布时间:2019-06-25

本文共 929 字,大约阅读时间需要 3 分钟。

声明: python学习中, 错误之处敬请谅解

python中有一些有趣的函数, 在这里只是做一些简单的记录,免得遗忘

lambda

  • lambad 是匿名函数, 语法结构为: lambda 参数(用逗号分隔):返回值 eg: lambda x,y : x+y
  • 下面通过一个例子来实现一个最简单的函数

    func = lambda x:x+10  print(func(10))   # 20  #等价于  def func(x):      return x+10  print(func(10))   # 20

map

  • map的语法结构: map(函数,列表)
  • 列表中的每个元素都会执行函数的,执行完成后返回一个新的列表
  • 说明: 入参函数的参数个数必须为1, 只能且必须有一个参数
  • 简单示例

    lt = [1,2,3,4,5,6,7,8]def testMap(x):  return x+10print(map(testMap,lt)) # [11,12,13,14,15,16,17,18]add = lambda y: y+10print(map(add,lt))   # [11,12,13,14,15,16,17,18]

reduce

  • reduce语法结构: reduce(函数, 列表, 初始值(可选参数))
  • 如果没有设置初始值时, 会把列表的第一个值和第二个值传递个函数, 再把函数返回的值和列表的第三个值作为参数传递函数, 依次进行, 最终返回一个值
  • 如果设置有初始值, 则会把列表的初始值和第一个值传递个函数, 再把函数返回的值和列表的第二个值作为参数传递函数, 依次进行, 最终返回一个值
  • 说明: 入参函数的参数个数必须为2, 当列表只有一个元素, 函数不会执行, 直接返回迭代器的首元素
  • 简单示例

    templt = [1,2,3,4,5,6]def add(x,y):  return x + yprint(reduce(add,templt))     # 21print(reduce(add,templt,10))  # 31

转载于:https://www.cnblogs.com/canfixme/p/10423114.html

你可能感兴趣的文章
php多态设计
查看>>
oracel SQL多表查询优化
查看>>
Spring-Context的注解实现依赖注入功能
查看>>
CSS格式化 CSS代码压缩工具
查看>>
Android的TextView使用Html来处理图片显示、字体样式、超链接等
查看>>
mvc伪静态<三> IIS配置
查看>>
.NET设计模式(12):外观模式(Façade Pattern)(转)
查看>>
【leetcode】Maximum Gap(hard)★
查看>>
Visual Studio中的lib的链接顺序
查看>>
Cacti安装详细步骤
查看>>
android自定义radiobutton样式文字颜色随选中状态而改变
查看>>
【CodeForces 604B】F - 一般水的题1-More Cowbe
查看>>
用JS获取地址栏参数的方法
查看>>
javascript中实现sleep函数
查看>>
ionic 001
查看>>
@params、@PathVariabl和@RequestParam用法与区别
查看>>
wxPython 4.0.0b2安装
查看>>
Android RecyclerView利用Glide加载大量图片into(Target)导致OOM异常
查看>>
UGUI表情系统解决方案
查看>>
ubuntu 下执行定时任务
查看>>