Python练习-内置函数的应用
说真的,我感觉这几天egon没有睡好,或者是egon心里有事儿,练习给留的太过简单了
# 编辑者:闫龙
# 用map来处理字符串列表,把列表中所有人都变成sb,比方alex_sb
#name=['alex','wupeiqi','yuanhao'] 既然都Somebody了,那么请给我一个不用egon的理由
name=['egon','lin','hai','feng']
print(list(map(lambda newname : newname+"_sb",name)))
#以下为解读代码
#将name列表传递给lambda匿名函数进行遍历,返回newname变量
# 然后让newname变量中的值逐个+"_sb",最终将返回值传递给m
m = map(lambda newname : newname+"_sb",name)
print(m)#<map object at 0x0000028FA3BA46A0>
l = list(m)#将m由map类型转为list类型,用于print打印
print(l)#['egon_sb', 'lin_sb', 'hai_sb', 'feng_sb'] #用map来处理下述l,然后用list得到一个新的列表,列表中每个人的名字都是sb结尾
#l=[{'name':'alex'},{'name':'y'}]既然都Somebody了,那么请给我一个不用egon的理由
l=[{'name':'linhaifeng'},{'name':'egon'}]
print(list(map(lambda newname:{"name":newname["name"]+"_sb"}, l)))
#以下为解读代码
#将l列表传递给lambda匿名函数进行遍历,返回newname变量
# newname变量是({"name":"linhaifeng"},{"name":"egon"})
# 让newname逐个提取name对应的value逐个+"_sb",最终将返回值传递给m
m=map(lambda newname:{"name":newname["name"]+"_sb"},l)
print(m)#<map object at 0x000001B7B24D4898>
l = list(m)#将m由map类型转为list类型,用于print打印
print(l)#['linhaifeng_sb', 'egon_sb']
map函数练习
来回来去,练了好几遍,一开始还可以
# 编辑者:闫龙
#用filter来处理,得到股票价格大于20的股票名字
shares={
'IBM':36.6,
'Lenovo':23.2,
'oldboy':21.2,
'ocean':10.2,
}
#代码解读:
#变量fi接受filter筛选出来的结果
#匿名函数中price得到的是shares中的keys
# 也就是说如果要提取shares中的value,就必须要shares[price]
#大于20的全部返回给fi
fi=filter(lambda price:shares[price] > 20,shares)
print(list(fi))#将fi转型为list类型,打印
#['oldboy', 'Lenovo', 'IBM']
filter函数练习
然后发现,越来越无聊,越来越无聊,Somebody你要振作啊
# 编辑者:闫龙
#如下,每个小字典的name对应股票名字,shares对应多少股,price对应股票的价格
portfolio = [
{'name': 'IBM', 'shares': 100, 'price': 91.1},
{'name': 'AAPL', 'shares': 50, 'price': 543.22},
{'name': 'FB', 'shares': 200, 'price': 21.09},
{'name': 'HPQ', 'shares': 35, 'price': 31.75},
{'name': 'YHOO', 'shares': 45, 'price': 16.35},
{'name': 'ACME', 'shares': 75, 'price': 115.65}
]
#1:map来得出一个包含数字的迭代器,数字指的是:购买每支股票的总价格
m = map(lambda sumprice:{sumprice["name"]:sumprice["price"]*sumprice["shares"]},portfolio)
print(list(m)) #2:基于1的结果,用reduce来计算,购买这些股票总共花了多少钱
from functools import reduce
m = map(lambda sumprice:sumprice["price"]*sumprice["shares"],portfolio)
r = reduce(lambda x,y:x+y,m)
print(r) #3:用filter过滤出,单价大于100的股票有哪些
fi = filter(lambda por:por["price"]>100,portfolio)
print(list(fi))
map/reduce/filter函数练习
完事儿了,自己搞吧!
Python练习-内置函数的应用的更多相关文章
- python基础-内置函数详解
一.内置函数(python3.x) 内置参数详解官方文档: https://docs.python.org/3/library/functions.html?highlight=built#ascii ...
- 如何查看Python的内置函数
经常调用的时候不知道python当前版本的内置函数是哪些,可以用下面的指令查看: C:\Users\Administrator>python Python 2.7.11 (v2.7.11:6d1 ...
- python_way,day3 集合、函数、三元运算、lambda、python的内置函数、字符转换、文件处理
python_way,day3 一.集合 二.函数 三.三元运算 四.lambda 五.python的内置函数 六.字符转换 七.文件处理 一.集合: 1.集合的特性: 特性:无序,不重复的序列 如果 ...
- python基础——内置函数
python基础--内置函数 一.内置函数(python3.x) 内置参数详解官方文档: https://docs.python.org/3/library/functions.html?highl ...
- Python的内置函数
python的内置函数一共有68个,下面将简单介绍各个函数的功能. abs() dict() help() min() setattr() all() dir() hex() next() slice ...
- python print()内置函数
啦啦啦啦啦啦,我又来了,学习任何东西都得坚持,我一定的好好加油!!! 今天来说说print()函数,前边我们已经用过好好多次啦,现在来学习哈吧!!! Python的内置函数,print() print ...
- Python入门-内置函数一
什么是内置函数?就是python给你提供的拿来直接用的函数,比如print,input等等,截止到python版本3.6.2 python一共提供了68个内置函数,他们就是python直接提供给我们的 ...
- Python 集合内置函数大全(非常全!)
Python集合内置函数操作大全 集合(s).方法名 等价符号 方法说明 s.issubset(t) s <= t 子集测试(允许不严格意义上的子集):s 中所有的元素都是 t 的成员 s ...
- Python字典内置函数和方法
Python字典内置函数和方法: 注:使用了 items.values.keys 返回的是可迭代对象,可以使用 list 转化为列表. len(字典名): 返回键的个数,即字典的长度 # len(字典 ...
- Python元组内置函数
Python元组内置函数: len(元组名): 返回元组长度 # len(元组名): # 返回元组长度 tuple_1 = (1,2,3,'a','b','c') print("tuple_ ...
随机推荐
- 传说中的WCF:消息拦截与篡改
我们知道,在WCF中,客户端对服务操作方法的每一次调用,都可以被看作是一条消息,而且,可能我们还会有一个疑问:如何知道客户端与服务器通讯过程中,期间发送和接收的SOAP是什么样子.当然,也有人是通过借 ...
- 跳转不同包时候 需要先指定该包的namespace 注意 先跳转 即加上/
- 【大数据】Azkaban学习笔记
一 概述 1.1 为什么需要工作流调度系统 1)一个完整的数据分析系统通常都是由大量任务单元组成: shell脚本程序,java程序,mapreduce程序.hive脚本等 2)各任务单元之间存在时间 ...
- 【hihocoder编程练习赛9】闰秒
题目链接 #include<stdio.h> #include<string.h> #include<algorithm> #include<math.h&g ...
- 【刷题】BZOJ 2959 长跑
Description 某校开展了同学们喜闻乐见的阳光长跑活动.为了能"为祖国健康工作五十年",同学们纷纷离开寝室,离开教室,离开实验室,到操场参加3000米长跑运动.一时间操场上 ...
- VS2010 重命名文件:源文件名和目标文件名相同 的解决方案
想要在“”解决方案资源管理器“”中修改一个已经写好的文件的文件名,如图: 在改了几次后就出现了如图的问题: 然而在“解决方案资源管理器”中并没有看到,于是我打开了工程在磁盘中的位置文件夹: 意外发现了 ...
- mysqlbinlog- 处理二进制日志文件的实用工具 学习笔记
参考 MySQL 5.5官方简体中文参考手册完美版 8.6 节 调用: shell> mysqlbinlog [option] log-files... mysqlbinlog支持下面选项: ...
- mybatis.5.动态SQL
1.动态SQL,解决关联sql字符串的问题,mybatis的动态sql基于OGNL表达式 if语句,在DeptMapper.xml增加如下语句; <select id="selectB ...
- 响应式开发(五)-----Bootstrap CSS----------Bootstrap 网格系统
如果我们看过一些bootstrap的框架,经常看到col-sm-3等样式class. Bootstrap 提供了一套响应式.移动设备优先的流式网格系统,随着屏幕或视口(viewport)尺寸的增加,系 ...
- Java之NIO,BIO,AIO
Hollis知识星球的一些学习笔记,有兴趣的朋友可以微信搜一下 什么是NIO 什么是IO? 它是指计算机与外部世界或者一个程序与计算机的其余部分的之间的接口.它对于任何计算机系统都非常关键,因而所有 ...