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. 你会Spring Cloud吗?

    如果有人问你这句话,你不要急着回答,因为答语和问者的关系莫大. 如果问你的是个老板或管理者,那么他多半不了解这项技术,很有可能只是知道这个技术名词而已,你知道的一定比他们深,你大可夸夸其谈的.在口若悬 ...

  2. java集合类源码学习三——ArrayList

    ArrayList无疑是java集合类中的一个巨头,而且或许是使用最多的集合类.ArrayList继承自AbstractList抽象类,实现了List<E>, RandomAccess, ...

  3. eleLogger主题评论区(反馈与建议)

    // run $('#blog_post_info, #BlogPostCategory, #post_next_prev, #blog_post_info_block').remove() $('# ...

  4. linux6.4内核由2.6升级成3.6

    安装CentOS 6.4之后,内核默认是2.6.32.由于docker需要3.0以上的内核,所以需要对内核进行升级. 1. 安装必要组件# yum -y install ncurses-devel # ...

  5. 1. spring5源码 -- Spring整体脉络 IOC加载过程 Bean的生命周期

    可以学习到什么? 0. spring整体脉络 1. 描述BeanFactory 2. BeanFactory和ApplicationContext的区别 3. 简述SpringIoC的加载过程 4. ...

  6. 《Offer一箩筐》2W字总结面试套路14问——不给例子的教程都是耍流氓!!

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」. 如果觉得 「不错」 的朋友,欢迎 「关注 + 留言 + 分享」,文末有完整的获取链接,您的支持是我前进的最大的动力! Hi~ 这里是 ...

  7. matplotlib | Python强大的作图工具,让你从此驾驭图表(二)

    今天是数据处理专题的第10篇文章,我们继续来聊聊matplot这个工具库. 在上周的文章当中我们介绍了matplot的基本用法,以及展示了一些简单的例子,让大家直观地了解这个工具包.我们可以简单地将它 ...

  8. 现有 Vue.js 项目快速实现多语言切换的一种思路

    Web 项目多语言(i18n,即国际化)是比较常见的需求,常规的做法大概有以下几种: 每种语言单独开发页面,适用于 CMS 之类的网站 多语言文本和页面结构分离,运行时动态替换.适用于单页应用(SPA ...

  9. 抢先学鸿蒙(HarmonyOS)2.0,你就是下一个大咖!

        1. 你不知道的鸿蒙(HarmonyOS)   2020年9月10日,华为开发者大会发布了鸿蒙(HarmonyOS)2.0.我在2020-9-11日也发布了全球首套鸿蒙2.0 App开发视频课 ...

  10. web网站——apache和nginx对比02

    nginx介绍 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理 ...