Python3-lamba表达式、zip函数
lambda表达式
学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即:
- # 普通条件语句
- if == :
- name = 'name1'
- else:
- name = 'name2'
- # 三元运算
- name = 'name1' if == else 'name2'
对于简单的函数,也存在一种简便的表示方式,即:lambda表达式
- # 定义函数(普通方式)
- def func(arg):
- return arg +
- # 执行函数
- result = func()
- # ###################### lambda ######################
- # 定义函数(lambda表达式)
- my_lambda = lambda arg : arg +
- # 执行函数
- result = my_lambda()
lambda存在意义就是对简单函数的简洁表示
- # cal2 = lambda n : n*n
- # ret = cal2()
- # print(ret)
- # def add(x, y): return x+y
- # add2 = lambda x,y : x+y
- # ret = add(, )
- # print(ret)
上面是匿名函数的函数用法。除此之外,匿名函数也不是浪得虚名,它真的可以匿名。在和其他功能函数合作的时候
- l=[,,,,,,,]
- print(max(l))
- Output:
- dic={'k1':,'k2':,'k3':}
- print(max(dic))
- print(dic[max(dic,key=lambda k:dic[k])])
- Output:
- k3
- res = map(lambda x:x**,[,,,,])
- for i in res:
- print(i)
- 输出
- res = filter(lambda x:x>,[,,,,])
- for i in res:
- print(i)
- 输出
面试题练一练
现有两个元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}]
- t1 = (('a'),('b'))
- t2 = (('c'),('d'))
- res = lambda t1,t2 : [{i,j}for i, j in zip(t1, t2)]
- print(res(t1, t2))
知识补给:python3 zip函数
zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象(可以用list转换)。
如果各个迭代器的元素不一致则返回列表长度与最短对象相同,利用*号操作符,可以将元组解压为列表。
语法:zip([iterable,...]) --- 一个或多个迭代器, 返回元组列表
- >>>a = [,,]
- >>> b = [,,]
- >>> c = [,,,,]
- >>> zipped = zip(a,b) # 返回一个对象
- >>> zipped
- <zip object at 0x103abc288>
- >>> list(zipped) # list() 转换为列表
- [(, ), (, ), (, )]
- >>> list(zip(a,c)) # 元素个数与最短的列表一致
- [(, ), (, ), (, )]
- >>> a1, a2 = zip(*zip(a,b)) # 与 zip 相反,zip(*) 可理解为解压,返回二维矩阵式
- >>> list(a1)
- [, , ]
- >>> list(a2)
- [, , ]
Python3-lamba表达式、zip函数的更多相关文章
- python3中的 zip()函数 和python2中的 zip()函数 的区别
python3中的 zip()函数 和python2中的 zip()函数 的区别: 描述: zip() 函数用于将可迭代对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象. ...
- Python3.x:zip()函数
Python3.x:zip()函数 1,概述: zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表: 2,示例: (1).示例1: x = [1, 2, 3] y = [4, ...
- python3中的zip函数(转)
原文地址:https://www.cnblogs.com/qqhfeng/p/5267352.html 在window,显示变量 print(x);而在linux中 print x 例如,有两个列表: ...
- python3中的zip函数
zip函数的作用: zip函数接受任意多个可迭代对象作为参数,将对象中对应的元素打包成一个tuple,然后返回一个可迭代的zip对象. 这个可迭代对象可以使用循环的方式列出其元素 若多个可迭代对象的长 ...
- python中的zip()函数和map()函数
一.zip()函数 1.语法: zip(iterable, ...) 参数说明: iterable,...-- 一个或多个迭代器; 在python2中: zip() 函数用于将可迭代的对象作为参数,将 ...
- 第11条:用zip函数同时遍历两个迭代器
核心知识点: (1)内置的zip函数可以平行地遍历多个迭代器. (2)python3中地zip相当于生成器,会在遍历过程中逐次产生元祖.而python2中地zip则是直接把这些元祖完全生成好,并一次性 ...
- zip函数用于对列表对应元素打包成元组
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表. 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以 ...
- python3版本中的zip函数
例如,有两个列表: 1 2 >>>a = [1,2,3] >>>b = [4,5,6] 使用zip()函数来可以把列表合并,并创建一个元组对的列表. 1 2 > ...
- 关于python3.4版本中的zip函数
特别注意: 在window,显示变量 print(x);而在linux中 print x 例如,有两个列表: >>>a = [1,2,3] >>>b = [4,5, ...
随机推荐
- CodeForces121E 线段树上线段果
http://codeforces.com/problemset/problem/121/E 题意: Petya 喜欢幸运数,幸运数只包含 4 和 7 这两个数字.例如 47,744,4 都是幸运数字 ...
- 收获,不止_Oracle读书笔记
PMON:含义为Processes Monitor,是进程监视器,如果你在执行某些更新语句,未提交时进程崩溃了,这时PMON会自动回滚该操作,,无需你人工去执行ROLLBACK命令.除此之外还可以干预 ...
- docker 基础之私有仓库
docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库.安装运行 docker-registry容器 在安装了 Docker 后,可以通过获取官方 registry 镜像来运行. ...
- Dubbo服务的运行方式
1.使用Servlet容器运行(Tomcat.Jetty)等 ---不可取 缺点:增加复杂性(端口,管理) 浪费资源(内存) 2.自建Main方法类来运行(Spring容器) ---不建议(本地调试可 ...
- wxpython绘制音频
#-*- coding: utf-8 -*- ############################################################################# ...
- java中变量关系
- vue-router导航钩子
Vue路由中的导航钩子,可以用来拦截导航,让它完成跳转. 全局导航钩子 当一个导航触发时,全局的 before 钩子按照创建顺序调用.钩子是异步解析执行,此时导航在所有钩子 resolve 完之前一直 ...
- 042、用volume container 共享数据 (2019-03-05 周二)
参考https://www.cnblogs.com/CloudMan6/p/7188479.html volume container 是专门为其他容器提供 volume 的容器,他提供的卷也可以 ...
- linux 中 如何 搜索 指定目录 下 指定文件 的 指定内容
开发时,经常遇到 全局查找某些代码 linux 中 如何 检索 某 目录下指定文件 的 指定内容如下: //.点为查找当前目录 下 的 所有 *.php 文件里 有 hello 的文件 find . ...
- 二十四、Linux 进程与信号---wait 函数
24.1 wait 函数说明 24.1.1 waitpid---等待子进程中断或结束 waitpid(等待子进程中断或结束) 相关函数 wait,fork #include <sys/types ...