sorted   排序函数

内置函数中提供了一个通用的排序方案 ,返回一个新的列表,不会改变原数据

语法: sorted(iterable, key, reverse)
key: 排序方案, sorted函数内部会把可迭代对象中的每一个元素拿出来交给后面的key
后面的key计算出一个数字. 作为当前这个元素的权重, 整个函数根据权重进行排序
reverse 参数默认为False(升序)
lst = [
{'name':"汪峰","age":48},
{"name":"章子怡",'age':38},
{"name":"alex","age":39},
{"name":"wusir","age":32},
{"name":"赵一宁","age":28}
] # 根据年龄排序
ll = sorted(lst, key=lambda le: le['age'])
print(ll) # 根据名字长度排序
ll = sorted(lst, key=lambda le: len(le['name']))
print(ll) filter 过滤函数
filter(function, iterable)  返回一个迭代器 可通过for list() next() 取值
把可迭代对象中的每一个元素交给前面的函数进行筛选. 函数返回True或者False
#留下大于60分的
lst = [
{"name":"汪峰", "score":48},
{"name":"章子怡", "score":39},
{"name":"赵一宁","score":97},
{"name":"石可心","score":90}
] ll = filter(lambda el: el['score'] > 60, lst)
print(ll) #==》<filter object at 0x02CA08B0> 迭代器地址
print(list(ll)) #==》[{'name': '赵一宁', 'score': 97}, {'name': '石可心', 'score': 90}]
map    映射函数
语法  map(function, iterable)   返回一个迭代器于filter()类似
把可迭代对象中的数据交给前面的函数进行执行. 返回值就是map的处理结果
# 返回一个可迭代数据的平方
lst = [1, 2, 3]
ll = map(lambda n : n**2, lst)
# print(list(ll))
for el in ll:
print(el)

map可以将可迭代对象进行处理,与zip()类似有水桶效应,多出的项不做处理

# 水桶效应, zip()
lst1 = [1, 3, 5, 7]
lst2 = [2, 4, 6, 8, 10]
m = map(lambda x, y, z: x + y + z, lst1, lst2, [5, 1, 2, 3, 6])
print(list(m))
输出:[8, 8, 13, 18]

最新文章

  1. Android之控件使用
  2. 适配ios10(iTunes找不到构建版本)
  3. 读书摘要,一种新的黑客文化:programming is forgetting
  4. android 测试(转)
  5. SharePoint 2013 开发——开发并部署webpart
  6. 在sql设计中没法修改表结构
  7. xcode升级,报错 libxml/tree.h not found (Xcode4.6解决方案)
  8. opencv学习笔记(03)——遍历图像(迭代器法)
  9. 【python自动化第一篇:python介绍与入门】
  10. java第二课,java基础2
  11. 201521123003《Java程序设计》第10周学习笔记
  12. 基于Metronic的Bootstrap开发框架--工作流模块功能介绍(2)
  13. Lecture4_1&amp;4_2.多维随机变量及其概率分布
  14. activemq stomp类
  15. 5-Django接口数据处理
  16. Connection lost: The server closed the connection
  17. python摸爬滚打之day02----while循环,运算符,格式化输出
  18. Ant在Java项目中的使用(一眼就看会)
  19. java 内部类和向上转型
  20. Java开发之富文本编辑器TinyMCE

热门文章

  1. python 分支结构
  2. jdbctemplate中的query(sql,params,mapper)与queryForList(sql,params,class)区别
  3. mySQL 开启事件存储过程
  4. Spring帖子汇总
  5. linux 个人测试用例
  6. POJ 3480 &amp;amp; HDU 1907 John(尼姆博弈变形)
  7. 内存空间申请(C)
  8. WPF-Binding对数据的检验
  9. hdu 3062+1824(2-sat入门)
  10. Eclipse集成resin服务器