文档章节

lambda与内置函数

eddy_linux
 eddy_linux
发布于 2015/11/15 12:54
字数 329
阅读 31
收藏 0
点赞 0
评论 0
学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即
# 普通条件语句
if 1 == 1:
    name = 'eddy'
else:
    name = 'yys'
  
# 三元运算
name = 'eddy' if 1 == 1 else 'yys'
lambda表达式
# ###################### 普通函数 ######################
# 定义函数(普通方式)
def func(arg):
    return arg + 1
  
# 执行函数
result = func(123)

# ###################### lambda ######################
  
# 定义函数(lambda表达式)
my_lambda = lambda arg : arg + 1
  
# 执行函数
result = my_lambda(123)
内置函数
一、map
遍历序列,对序列中每个元素进行操作,最终获取新的序列
每个元素增加100
li = [11, 22, 33]
new_list = map(lambda a: a + 100, li)

两个列表对应元素相加
li = [11, 22, 33]
sl = [1, 2, 3]
new_list = map(lambda a, b: a + b, li, sl)
二、filter
对于序列中的元素进行筛选,最终获取符合条件的序列
获取列表中大于22的所有元素集合
li = [11, 22, 33]
new_list = filter(lambda arg: arg > 22, li)#filter第一个参数为空,将获取原来序列
三、reduce
对于序列内所有元素进行累计操作
获取序列所有元素的和
li = [11, 22, 33]
result = reduce(lambda arg1, arg2: arg1 + arg2, li)
# reduce的第一个参数,函数必须要有两个参数
# reduce的第二个参数,要循环的序列
# reduce的第三个参数,初始值


© 著作权归作者所有

共有 人打赏支持
eddy_linux
粉丝 18
博文 135
码字总数 188789
作品 0
成都
程序员
Java8 新语法习惯 (函数接口)

了解如何创建自定义函数接口,以及为什么应该尽量使用内置的接口。概览 lambda 表达式的类型是什么?一些语言使用函数值或函数对象来表示 lambda 表达式,但是 Java 语言没有这么做。Java 使...

晁东洋 ⋅ 01/10 ⋅ 0

fluent python- 5 一等函数-面向对象(附第四章-文本和字节序列)

第 4 章 文本和字节序列 人类使用文本, 计算机使用字节序列。 第 5 章 一等函数 前言: 在 Python 中, 函数是一等对象。 编程语言理论家把“一等对象”定义为满足下述条件的程序实体: 1、...

时间之友 ⋅ 2017/12/03 ⋅ 0

浏览器中的scheme解释器--SchemeScript

一个用javascript实现的scheme解释器,可以运行在浏览器中或node.js中。 刚刚看到编译原理与实践第二章,一时兴起,想写个以前就想写的scheme的解释器。昨天晚上开始写,到刚才为止,接近一天...

zoowii ⋅ 2012/11/01 ⋅ 0

Python函数式编程中map()、reduce()和filter()函数的用法

Python中、和三个函数均是应用于序列的内置函数,分别对序列进行遍历、递归计算以及过滤操作。这三个内置函数在实际使用过程中常常和联合使用,我们首先介绍下lambda函数。1、lambda函数 la...

损失函数 ⋅ 05/24 ⋅ 0

Python函数的说明与运用

Python函数的说明与运用 函数定义: 函数是一组语句的集合,用以实现某一特定功能。函数可简化脚本,函数包括内置函数和自定义函数 自定义函数框架: 在python中使用def可以声明一个函数,完...

高好亮 ⋅ 2016/08/02 ⋅ 0

python3学习之内置函数

filter 参数中函数返回True或者False,将元素返回到结果 li = [1,2,3,4,5,6] f = lambda a: a>3 原理:简单函数用lambda;a相当于参数,"a>3"是函数体,有返回值 filter(函数A,可迭代序列B) ...

lejie851112 ⋅ 2017/05/03 ⋅ 0

python 函数笔记

高阶函数 filter 这个函数的功能就是对一个序列进行过滤,只保存需要的值 比如我们对一个组合进行筛选只保留偶数就可以采用下面的方法 如果我们要对一个组合进行过滤只保存其中的回文数 所谓...

罗布V ⋅ 2016/02/27 ⋅ 0

GNU Make 的 Lisp 实现--makelisp

makelisp 是 GNU make 的 Lisp 实现。 makelisp.mk 是 GNU make 中的 Lisp 解析器。 GNU make 包含两个内置函数:$(shell) 和 $(guile)。 使用 $ make -f makelisp.mk LISPPROGRAM='(car (q......

叶秀兰 ⋅ 2015/09/16 ⋅ 0

Lisp 解释器--Bud-Lisp

Bud是一个使用Java实现的类Scheme的Lisp方言解释器,简单、轻量,能够十分方便地嵌入Java程序中使用。 Bud实现了R5RS中大多数的特殊形式(Special Form)以及内置函数,其中包含:quote、lam...

zetaplusae ⋅ 2016/05/24 ⋅ 0

Java中的Lambda表达式

最近看到一段代码, 里面用到了lambda表达式。刚开始学习java语法的时候对于这些东西只是草草看了一下,以后也没再用,到现在都忘干净了。突然感觉自己的基础很薄弱呀,,,所以重新学了一下...

zq17865815296 ⋅ 2017/11/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Sqoop

1.Sqoop: 《=》 SQL to Hadoop 背景 1)场景:数据在RDBMS中,我们如何使用Hive或者Hadoop来进行数据分析呢? 1) RDBMS ==> Hadoop(广义) 2) Hadoop ==> RDBMS 2)原来可以通过MapReduce I...

GordonNemo ⋅ 38分钟前 ⋅ 0

全量构建和增量构建的区别

1.全量构建每次更新时都需要更新整个数据集,增量构建只对需要更新的时间范围进行更新,所以计算量会较小。 2.全量构建查询时不需要合并不同Segment,增量构建查询时需要合并不同Segment的结...

无精疯 ⋅ 49分钟前 ⋅ 0

如何将S/4HANA系统存储的图片文件用Java程序保存到本地

我在S/4HANA的事务码MM02里为Material维护图片文件作为附件: 通过如下简单的ABAP代码即可将图片文件的二进制内容读取出来: REPORT zgos_api.DATA ls_appl_object TYPE gos_s_obj.DA...

JerryWang_SAP ⋅ 今天 ⋅ 0

云计算的选择悖论如何对待?

导读 人们都希望在工作和生活中有所选择。但心理学家的调查研究表明,在多种选项中进行选择并不一定会使人们更快乐,甚至不会产生更好的决策。心理学家Barry Schwartz称之为“选择悖论”。云...

问题终结者 ⋅ 今天 ⋅ 0

637. Average of Levels in Binary Tree - LeetCode

Question 637. Average of Levels in Binary Tree Solution 思路:定义一个map,层数作为key,value保存每层的元素个数和所有元素的和,遍历这个树,把map里面填值,遍历结束后,再遍历这个map,把每...

yysue ⋅ 今天 ⋅ 0

IDEA配置和使用

版本控制 svn IDEA版本控制工具不能使用 VCS-->Enable Version Control Integration File-->Settings-->Plugins 搜索Subversion,勾选SVN和Git插件 删除.idea文件夹重新生成项目 安装SVN客户......

bithup ⋅ 今天 ⋅ 0

PE格式第三讲扩展,VA,RVA,FA的概念

作者:IBinary 出处:http://www.cnblogs.com/iBinary/ 版权所有,欢迎保留原文链接进行转载:) 一丶VA概念 VA (virtual Address) 虚拟地址的意思 ,比如随便打开一个PE,找下它的虚拟地址 这边...

simpower ⋅ 今天 ⋅ 0

180623-SpringBoot之logback配置文件

SpringBoot配置logback 项目的日志配置属于比较常见的case了,之前接触和使用的都是Spring结合xml的方式,引入几个依赖,然后写个 logback.xml 配置文件即可,那么在SpringBoot中可以怎么做?...

小灰灰Blog ⋅ 今天 ⋅ 0

冒泡排序

原理:比较两个相邻的元素,将值大的元素交换至右端。 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第...

人觉非常君 ⋅ 今天 ⋅ 0

Vagrant setup

安装软件 brew cask install virtualboxbrew cask install vagrant 创建project mkdir -p mst/vmcd mst/vmvagrant init hashicorp/precise64vagrant up hashicorp/precise64是一个box......

遥借东风 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部