day18 Pyhton学习 内置函数最后七个
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学习 内置函数最后七个的更多相关文章
- day17 Pyhton学习 内置函数继续
1. locals 本地作用域/局部作用域 会随着位置的改变而改变 2.globals 全局作用域 永远不变,永远是全局 3.complex:复数 实数(有理数和无理数) 某一个数的平方是-1 ...
- Python学习——内置函数
内置函数: 1.abs():获取绝对值 >>> abs(-10) 10 >>> a= -10 >>> a.__abs__() 10 2.all() ...
- Python学习---内置函数的学习
内置函数 [Py3.5官方文档]https://docs.python.org/3.5/library/functions.html#abs Built-in Functions abs() dict ...
- Python学习--内置函数isinstance()
内置函数isinstance() isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type(). isinstance() 与 type() 区别: type() 不会认为子类 ...
- python——内置函数和匿名函数
内置函数 接下来,我们就一起来看看python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这 ...
- python内置函数的简单使用和介绍
"""内置函数的简单使用和介绍参考链接:https://docs.python.org/3/library/functions.html ""&quo ...
- python 常见的内置函数
内置函数 接下来,我们就一起来看看python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这 ...
- python——内置函数和lambda匿名函数
内置函数 接下来,我们就一起来看看python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这 ...
- python之路——内置函数和匿名函数
阅读目录 楔子 内置函数 匿名函数 本章小结 楔子 在讲新知识之前,我们先来复习复习函数的基础知识. 问:函数怎么调用? 函数名() 如果你们这么说...那你们就对了!好了记住这个事儿别给忘记了,咱们 ...
随机推荐
- Linux下 ls 命令的高级用法8例
Linux下 ls 命令的高级用法8例 在Linux下,ls这个命令大家肯定太熟悉了,良许相信只要是Linux工程师,每天都会离不开这个命令,而且一天会使用个几百次.但是,除了 ls -l 以外,你还 ...
- jzoj 6797. 【2014广州市选day2】hanoi
Description 你对经典的hanoi塔问题一定已经很熟悉了.有三根柱子,n个大小不一的圆盘,要求大盘不能压在小盘上,初始时n个圆盘都在第一根柱子上,最少要多少步才能挪到最后一根柱子上? 现在我 ...
- redhat中的RHCS双机配置
1. 主机概述 主机名 主机IP 备注 node1 192.168.1.101 模拟fence设备 node2 192.168.1.102 rhcs双机节点 node3 192.168.1.103 r ...
- Book of Shaders 02 - 矩阵:二维仿射变换练习
0x00 一些废话 如果要深入学习 CG (Computer Graphics,计算机图形学),必然要学习相关的数学知识.CG 涉及到多个不同的领域,根据所研究领域的不同,也会涉及到不同的数学分支.但 ...
- (专题一)06 MATLAB的算术运算
基本算术运算 乘法运算:A的行数等于B的列数(A,B两矩阵维数和大小相容) 除法运算 逻辑运算 真为1,假为0 优先级,算术运算的优先级最高,逻辑运算的优先级最低,但逻辑非运算是单目运算,他的优先级比 ...
- Python爬虫开发者工具介绍
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. chrome 开发者工具 当我们爬取不同的网站时,每个网站页面的实现方式各不相同,我们需要对 ...
- flask-session、数据库连接池
flask-session 作用:将默认保存的签名cookie中的值保存到redis/memcached/file/Mongodb/SQLAlchemy 安装:pip3 install flask-s ...
- linux学习(九)Linux知识点汇总
一.基础概念 Q:linux是什么? Linux是一种基于UNIX的操作系统,它基于Linux内核,常被用作服务器的操作系统. Q:UNIX和LINUX有什么区别? Unix:收费的,商用的,拥有许 ...
- 基础篇:详解锁原理,volatile+cas、synchronized的底层实现
目录 1 锁的分类 2 synchronized底层原理 3 Object的wait和notify方法原理 4 jvm对synchronized的优化 5 CAS的底层原理 6 CAS同步操作的问题 ...
- C#方法Extra
C#方法Extra 上次说的只是方法的一些基本东西,今天讲讲重载和 Lambda 表达式. 重载 方法的重载(overload)指的是同一个名字的方法,有着不一样的方法签名(method signat ...