1. enumerate  枚举函数

for i in enumerate(['a','b','c'],1):
print(i)
#(1, 'a')(2, 'b')(3, 'c')
goods_lst= [
{'name':'电脑','price':1999},
{'name':'鼠标','price':20},
{'name':'美女','price':20},
]
for index,dic in enumerate(goods_lst,1):
print(index,dic['name'],dic['price'])
#1 电脑 1999 2 鼠标 20 3 美女 20

2. all参数iterable,只要有一个为假返回False

print(all((1,2,3,True)))
print(all((1,2,3,0,True)))
print(all((1,2,3,True,[])))
print(all((1,2,3,True,'')))
#True,False,False,False

3.any 参数iterable 只要有一个为真返回True

print(any((1,2,3,True)))
print(any((1,2,3,0,True)))
print(any((1,2,3,True,[])))
print(any(({},False,0,[],'')))
#True,True,True,False

4.zip 拉链函数 返回迭代器-节省内存

a = (1,2,3,4)
b = ('a','b','c')
c = ['111','222']
d = {'k1':'v1','k2':'v2'}
ret = zip(a,b,c,d)
print(ret)
for i in ret:
print(i)
#(1, 'a', '111', 'k1')
#(2, 'b', '222', 'k2')

5. filter 筛选

ret = filter(None,[1,2,3,0,False])  # 只保留真的
print(ret)
for i in ret:
print(i)
#1 2 3
def func(i):
return type(i) is not dict l = ['sjkdhf',[1,2,3],{},()] # 去掉列表中的字典,用filter
ret = filter(func,l)
print(list(ret))
#['sjkdhf', [1, 2, 3], ()] # filter 就像 带着if条件的列表推导式
l = ['sjkdhf',[1,2,3],{},()]
print([i for i in l if type(i) is not dict])
#['sjkdhf', [1, 2, 3], ()]

6.map  一个迭代器中的每一个元素都需要去做同一个操作并返回一个结果组成一个新列表的时候map来处理

def func(i):
return i*'*' ret = map(func,[1,2,3])
print(ret)
for i in ret:
print(i)
#结果
*
**
***
range(10)#内部的每一个值的平方组成的新列表
def func(num):
return num**2
ret = map(func,range(10))
print(list(ret))
#[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

7.sorted() 排序 根据key对应的函数的返回值的大小来排序

由于必须要知道后面的值是谁 才能排出顺序,所以结果就是排序后的结果而不是可迭代的

l = [-3,1,2]
l.sort()
#[-3, 1, 2]
print(l)
def func(n):
return abs(n)
l.sort(key = func)
print(l)
#[1, 2, -3]
#sort在原列表上进行修改
l = [1,-3,2]
new_l = sorted(l) # sorted 在不改变原列表的情况下 生成一个新列表
print(l)#[1, -3, 2]
print(new_l)#[-3, 1, 2]
def func(n):
return abs(n)
ret = sorted(l,key = func)
print(ret)#[1, 2, -3]
# 面试重点
# filter(func,iterable) map(func,iterable) sorted(iterable,key) max(iterable,key) min(iterable,key) zip
# 常用的
# range enumerate print input open 基础数据类型 bytes

day18 Pyhton学习 内置函数最后七个的更多相关文章

  1. day17 Pyhton学习 内置函数继续

    1. locals 本地作用域/局部作用域  会随着位置的改变而改变 2.globals 全局作用域   永远不变,永远是全局 3.complex:复数 实数(有理数和无理数) 某一个数的平方是-1 ...

  2. Python学习——内置函数

    内置函数: 1.abs():获取绝对值 >>> abs(-10) 10 >>> a= -10 >>> a.__abs__() 10 2.all() ...

  3. Python学习---内置函数的学习

    内置函数 [Py3.5官方文档]https://docs.python.org/3.5/library/functions.html#abs Built-in Functions abs() dict ...

  4. Python学习--内置函数isinstance()

    内置函数isinstance() isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type(). isinstance() 与 type() 区别: type() 不会认为子类 ...

  5. python——内置函数和匿名函数

    内置函数 接下来,我们就一起来看看python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这 ...

  6. python内置函数的简单使用和介绍

    """内置函数的简单使用和介绍参考链接:https://docs.python.org/3/library/functions.html ""&quo ...

  7. python 常见的内置函数

    内置函数 接下来,我们就一起来看看python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这 ...

  8. python——内置函数和lambda匿名函数

    内置函数 接下来,我们就一起来看看python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这 ...

  9. python之路——内置函数和匿名函数

    阅读目录 楔子 内置函数 匿名函数 本章小结 楔子 在讲新知识之前,我们先来复习复习函数的基础知识. 问:函数怎么调用? 函数名() 如果你们这么说...那你们就对了!好了记住这个事儿别给忘记了,咱们 ...

随机推荐

  1. 使用fiddler和安卓模拟器抓取安卓客户端数据包

    安卓模拟器要选可以桥接网络的,本文中用的是雷电模拟器. 软件的安装都很简单,在此不再赘述. fiddler中的设置 首先,打开fiddler,点击Tools选项卡下的Options. 切换到https ...

  2. Node.js 从零开发 web server博客项目[数据存储]

    web server博客项目 Node.js 从零开发 web server博客项目[项目介绍] Node.js 从零开发 web server博客项目[接口] Node.js 从零开发 web se ...

  3. 为什么安装了MinGW之后,还是不能在Matlab中使用mex?

    原文地址:http://blog.sina.com.cn/s/blog_53c7b1580102xjcw.html 老版本的Matlab自带lcc,在Matlab中输入mex -setup就可以选择. ...

  4. java 多线程-4

    十四.sleep方法和wait方法的区别 [面试题] 相同点: 一旦执行方法,都可以使得当前线程进入阻塞状态. 不同点: 两个方法的声明位置不同:Thread类声明sleep():Object类中声明 ...

  5. ant在windows环境下安装

    前言: Apache Ant,是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于 Java 环境中的软件开发. 举个例子说明:平时在写 Java 程序的时候,基本的步骤都是 打 ...

  6. 4.利用GoogleProtoBuffer实现RPC

  7. matplotlib设置颜色、标记、线条,让你的图像更加丰富

    今天是数据处理专题的第11篇文章,我们继续来介绍matplotlib这个包的使用方法. 在上一篇文章当中我们介绍了matplotlib当中subplot的概念以及用法,今天我们将会来介绍matplot ...

  8. 解析形如(k,v)(k,v)(k,v)字符串

    有时根据需要会将map数据格式化成(k,v)(k,v)(k,v)--字符串,之后需要还原,下面代码实现了还原过程 1 void SplitString(const string& s, vec ...

  9. sping aop 源码分析(-)-- 代理对象的创建过程分析

    测试项目已上传到码云,可以下载:https://gitee.com/yangxioahui/aopdemo.git 具体如下: public interface Calc { Integer add( ...

  10. Spring Boot第四弹,一文教你如何无感知切换日志框架?

    持续原创输出,点击上方蓝字关注我吧 目录 前言 Spring Boot 版本 什么是日志门面? 如何做到无感知切换? 如何切换? 引入依赖 指定配置文件 日志如何配置? 总结 前言 首先要感谢一下读者 ...