python3 map,filter和列表推导式
num_list = [11,2,-33,10,7,3,5,43]
1、filter 函数
获取num_list大于5的元素,并返回列表
用lambda表达式实现:
# 在python2 中 filter返回的是一个列表,可以用for遍历
# 在python3 中 filter返回的是一个filter对象,可以用for遍历,也可以用list转换为列表
list2 = list(filter(lambda x: x>5, num_list))
print(list2) #输出:[11, 10, 7, 43]
用列表推导式实现:
list2 = [x for x in num_list if x >5]
print(list2) #输出:[11, 10, 7, 43]
2、map 函数
给num_list的所有元素都乘以2,并返回列表
用lambda表达式实现:
# 在python2 中 map返回的是一个列表,可以用for遍历
# 在python3 中 map返回的是一个map对象,可以用for遍历,也可以用list转换为列表
list3 = list(map(lambda x: x*2, num_list))
print(list3) #输出:[22, 4, -66, 20, 14, 6, 10, 86]
用列表推导式实现:
list3 =[x*2 for x in num_list]
print(list3) #输出:[22, 4, -66, 20, 14, 6, 10, 86]
3、Reduce函数
引入:from functools import reduce
计算num_list所有元素之和
list4 = reduce(lambda x,y: x+y, num_list)
print(list4) #输出 :48
4、列表推导式
获取num_list列表中大于0的元素并执行平方操作
squared_list = [x**2 for x in num_list if x >0]
print(squared_list) #输出 :[121, 4, 100, 49, 9, 25, 1849]
5、list join操作
binfo = ['lao','wang','python']
content = " ".join(binfo)
print(content) #输出 :lao wang python
content = ";".join(binfo)
print(content) #输出 :lao;wang;python
python3 map,filter和列表推导式的更多相关文章
- Python3 三元表达式、列表推导式、生成器表达式
Python3 三元表达式.列表推导式.生成器表达式 三元表达式 表达式中,有三个元素 name = input("请输入姓名: ")ret = '输入正确' if name == ...
- 转:Python一些特殊用法(map、reduce、filter、lambda、列表推导式等)
Map函数: 原型:map(function, sequence),作用是将一个列表映射到另一个列表, 使用方法: def f(x): return x**2 l = range(1,10) map( ...
- Python里的map、reduce、filter、lambda、列表推导式
Map函数: 原型:map(function, sequence),作用是将一个列表映射到另一个列表, 使用方法: def f(x): return x**2 l = range(1,10) map( ...
- Python一些特殊用法(map、reduce、filter、lambda、列表推导式等)
Map函数: 原型:map(function, sequence),作用是将一个列表映射到另一个列表, 使用方法: def f(x): return x**2 l = range(1,10) map( ...
- 第7条:用列表推导式来取代map和filter
核心知识点: 1.列表推导式要比内置的map和filter函数清晰,因为它无需额外编写lambda表达式. 2.列表推导式可以跳过输入列表中的某些元素,如果改用map来做,那就必须辅以filter方能 ...
- 列表推导式、生成器表达式以及zip()max()max()/min()sum()sort()map()filter()的用法
列表推导式: 基本格式: variable = [out_exp_res for out_exp in input_list if out_exp == 2] #out_exp_res: 列表生成元素 ...
- python3列表推导式和生成器。
1.把一个字符串变成 Unicode 码位的列表 >>> symbols = '$¢£¥€¤' >>> codes = [] >>> for sy ...
- Python2和Python3中列表推导式的不同
Python2和Python3中列表推导式的不同 python2 >>> x = 'my girl' >>> lst = [x for x in 'hello'] ...
- Python2中的列表推导式存在变量泄漏问题,在Python3中不存在
列表推导式(list comprehension) Python2: >>> x = 'my homie' >>> dummy = [x for x in 'ABC ...
随机推荐
- Xtreme9.0 - Light Gremlins 容斥
Xtreme9.0 - Light Gremlins 题目连接: https://www.hackerrank.com/contests/ieeextreme-challenges/challenge ...
- js获取鼠标点击事件的相对位置
<html><head><title>位置</title><script language="javascript" type ...
- The STM32F746G-DISCO discovery board -- MBED
https://developer.mbed.org/platforms/ST-Discovery-F746NG/ Microcontroller features STM32F46NGH6 in T ...
- bitnami下mysql配置-包含phpMyAdmin配置
mysql开启远程访问: 默认情况下mysql的绑定ip是bind-address=127.0.0.1 找到my.cnf bitnami@linux:~$ sudo find / -name my.c ...
- WinForm基于插件开发实现多项配置存储
一.课程介绍和实例在线演示 明人不说暗话,跟着阿笨一起玩WinForm.本次分享课程属于<C#高级编程实战技能开发宝典课程系列>中的一部分,阿笨后续会计划将实际项目中的一些比较实用的关于C ...
- delphi TOnFormVisibleChangeEvent 事件应用
TGQIFileMgrForm = class(TForm) 定义 property OnVisibleChange: TOnFormVisibleChangeEvent read FOnVisibl ...
- [Node.js]连接mongodb
摘要 前面介绍了node.js操作mysql以及redis的内容,这里继续学习操作mongodb的内容. 安装驱动 安装命令 cnpm install mongodb 安装成功 数据库操作 因为mon ...
- 对一个前端使用AngularJS后端使用ASP.NET Web API项目的理解(2)
chsakell分享了一个前端使用AngularJS,后端使用ASP.NET Web API的项目. 源码: https://github.com/chsakell/spa-webapi-angula ...
- Grid布局方式
wp7中Grid布局类似HTML中的表格,但是又不太一致! 为了测试新一个3行3列的Grid 方了方便,剔除掉其它XAML代码 [c-sharp:collapse] view plaincopy ...
- Windows Phone本地数据库(SQLCE):1、介绍(翻译)(转)
一只大菜鸟,最近要学习windows phone数据库相关的知识,找到了一些比较简短的教程进行学习,由于是英文的,顺便给翻译了.本身英语水平就不好,估计文中有不少错误,如果有不幸读到的童鞋请保持对翻译 ...