10-9 重要的内置函数(zip、filter、map、sorted)
reverse----reversed
- l = [1,2,3,4,5,6]
- l.reverse() #不会保留原列表
- print(l)
- l =[1,2,3,4,5,6]
- l2 = reversed(l) #保留原列表,返回一个反向的迭代器
- print(l2) #结果:<list_reverseiterator object at 0x00497350>
format:< ---表示左对齐,>表示右对齐,^表示居中
- print(format('nice','<20'))
- print(format('nice','>20'))
- print(format('nice','^20'))
结果:
- nice
nice
nice
重要内置函数
all
- 接收可迭代对象,全部元素都为真结果才为True,有一个元素为假,结果都为False
- print(all(['a','',123]))#False
- print(all(['a',123]))#True
- print(all(['a',0,123]))#False
any
接收可迭代对象,全部元素都为假结果才为False,有一个元素为真,结果都为True
- print(any(['a','',123]))#False
- print(any(['a',123]))#True
- print(any(['a',0,123]))#False
zip()
拉链方法:返回一个迭代器
- l1 = [1,2,3]
- l2 = ['a','b','c','d']
- l3 = ('*','**','***')
- d = {'k1':1,'k2':2}
- for i in zip(l1,l2,l3,d):
- print(i)
- 结果:
(1, 'a', '*', 'k1')
(2, 'b', '**', 'k2')
filter()
filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。
http://www.cnblogs.com/Eva-J/articles/7266192.html
- def is_odd(x):
- return x % 2 == 1
- list = filter(is_odd,[1,3,4,5,6,7,8,9,12])
- list_odd =[]
- print(list) #返回一个迭代器
- for i in list:
- list_odd.append(i)
- print(list_odd) #结果[1, 3, 5, 7, 9]
- 例子:请利用filter()过滤出1~100中平方根是整数的数
- from math import sqrt
- def zheng(x):
- if sqrt(x) % 1==0:
- return x
- list = filter(zheng,range(1,101))
- list_odd =[]
- for i in list:
- list_odd.append(i)
- print(list_odd) #结果:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
map()
- 接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。
- result = map(abs,[1,-4,3])
- print(result)
- for i in result:
- print(i)
- 总结:
filter
1.执行了filter之后的结果,集合中的数<=执行之前的数
2.filter只管筛选,不会改变原来的值
map
执行前后元素个数不变
值可能发生变化
sorted
- http://www.cnblogs.com/Eva-J/articles/7265992.html
- 参数说明:
iterable:是可迭代类型;
key:传入一个函数名,函数的参数是可迭代类型中的每一项,根据函数的返回值大小排序;
reverse:排序规则. reverse = True 降序 或者 reverse = False 升序,默认升序。
返回值:有序列表
- l1 = [1,3,5,-2,-4,-6]
- l1.sort() #在原列表的基础上进行排序
- print(l1) #[-6, -4, -2, 1, 3, 5]
- l1.sort(key=abs) #在原列表的基础上进行排序
- print(l1) #[1, -2, 3, -4, 5, -6]
- #sorted()执行后,原列表依然存在
- print(sorted(l1)) #[-6, -4, -2, 1, 3, 5]
- print(sorted(l1,reverse=True)) #[5, 3, 1, -2, -4, -6]
- #例子:按照长度排序
- l = [' ',[1,2],'hello world','hfj']
- new_l = sorted(l,key=len)
- print(new_l) #[' ', [1, 2], 'hfj', 'hello world']
10-9 重要的内置函数(zip、filter、map、sorted)的更多相关文章
- Python内置函数之filter map reduce
Python内置函数之filter map reduce 2013-06-04 Posted by yeho Python内置了一些非常有趣.有用的函数,如:filter.map.reduce,都是对 ...
- python之有用的3个内置函数(filter/map/reduce)
这三个内置函数还是非常有用的,在工作中用的还不少,顺手,下面一一进行介绍 1.filter 语法:filter(function,iterable) 解释:把迭代器通过function函数进行过滤出想 ...
- Python学习(五)函数 —— 内置函数 lambda filter map reduce
Python 内置函数 lambda.filter.map.reduce Python 内置了一些比较特殊且实用的函数,使用这些能使你的代码简洁而易读. 下面对 Python 的 lambda.fil ...
- python学习笔记(十六)内置函数zip、map、filter的使用
1.zip,就是把两个或者多个list,合并到一起,如果想同时循环2个list的时候,就使用zip.示例如下: l1 = ['a','b','c','e','f','g'] l2 = [,,] l3= ...
- python 内置函数zip,map,三元,lambda表达式
#内置函数zip(),将多个可迭代对象(集合等)按照顺序进行组合成tuple元祖,放在zip 对象进行存储,: #当参数为空时候,返回空 #如果 zip() 函数压缩的两个列表长度不相等,那么 zip ...
- python3 之 内置函数Zip
python3 内置函数zip 一.简介: 该函数用于将多个可迭代对象作为参数,依次将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象.二.实例1: name = ['张三','李四', ...
- 其它内置函数(zip等)
python内置函数 截止到python版本3.6.2,python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数 Built-in Functio ...
- Python 内置函数 -- zip(), sorted(), filter()和map()
内置函数1. zip() 打包(木桶效应)描述: zip() 函数用于将可迭代的对象作为参数, 将对象中对应的元素打包成一个个元组, 然后返回由这些元组组成的列表语法: zip([iterable, ...
- 10、SQL Server 内置函数、临时对象、流程控制
SQL Server 内置函数 日期时间函数 --返回当前系统日期时间 select getdate() as [datetime],sysdatetime() as [datetime2] getd ...
- 内置函数zip,map,even
内置函数的补充:1.zip:l1 = ['a','b','c','e','f','g']l2 = [1,2,3]l3=['A','B','C']L4=['牛','牛','niu']#zip,就是把俩l ...
随机推荐
- 小烈送菜——奇怪的dp
小烈送菜 题目描述 小烈一下碰碰车就被乐满地的工作人员抓住了.作为扰乱秩序的惩罚,小烈必须去乐满地里的"漓江村"饭店端盘子. 服务员的工作很繁忙.他们要上菜,同时要使顾客们尽量高兴 ...
- LeetCode 哈希表 380. 常数时间插入、删除和获取随机元素(设计数据结构 List HashMap底层 时间复杂度)
比起之前那些问计数哈希表的题目,这道题好像更接近哈希表的底层机制. java中hashmap的实现是通过List<Node>,即链表的list,如果链表过长则换为红黑树,如果容量不足(装填 ...
- Jenkins Pipeline 部署 SpringBoot 应用
一. 安装依赖包 yum install -y wget yum install -y gcc-c++ yum install -y zlib-devel perl-ExtUtils-MakeMake ...
- 16进制字符串转BCD码
15位IMEI字符串转8位BCD码 public static string SwapStr(string str) { return (str.Substring(1, 1) + str.Subst ...
- JVM 专题十七:垃圾回收(一)简述
1. 什么是垃圾 1.1 C++与Java 1.2 概述 垃圾收集,不是Java语言的伴生产物.早在1960年,第一门开始使用内存动态分配和垃圾收集技术的Lisp语言诞生. 关于垃圾收集有三个经典问题 ...
- Python面向对象01 /面向对象初识、面向对象结构、类、self、实例化对象
Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 目录 Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 1. 面向对象初识 2. 面向 ...
- vue-router 报错、:Avoided redundant navigation to current location 错误、路由重复
在用vue-router 做单页应用的时候重复点击一个跳转的路由会出现报错 这个报错是重复路由引起的只需在注册路由组建后使用下方重写路由就可以 const originalReplace = VueR ...
- Mysql----左连接、右连接、内连接、全连接的区别
最近,突然想起来数据库有好些时间没用到,所以,想把数据库有关的知识回顾一下,所以接下来这个月,基本上会以数据库的帖子来写为主,首先,很多同学都会有个错觉,觉得学习数据库会sql语句的增删改查就够了,其 ...
- 德布鲁因序列与indexing 1
目录 写在前面 标记left-most 1与right-most 1 确定位置 德布鲁因序列(De Bruijn sequence) 德布鲁因序列的使用 德布鲁因序列的生成与索引表的构建 参考 博客: ...
- Go Pentester - HTTP Servers(3)
Building Middleware with Negroni Reasons use middleware, including logging requests, authenticating ...