视频链接:https://www.bilibili.com/video/BV1SE411N7Hi?p=59

知识链接:https://guobaoyuan.gitee.io/new_book/Python/13-1%20%E5%86%85%E7%BD%AE%E5%87%BD%E6%95%B0%E4%BA%8C.html

以下内容仅供自己学习使用,侵删

#!/usr/bin/env python
# -*- coding:utf-8 -*-#-----------------------高阶函数-----------------------------
# reversed(可迭代对象)--反转
# filter(过滤规则的函数,可迭代对象)--过滤
# map(映射要执行的函数,可迭代对象,可迭代对象,可迭代对象)--映射
# sorted(可迭代对象,key=排序规则)--排序
# max()--求最大值# filter()--过滤
# filter(函数就是写过滤,可迭代对象)# lst=[1,2,3,4,5,6,7,8]
# def func(x):#这个func必须有一个参数
#     return x>4
# print(list(filter(func,lst)))#[5, 6, 7, 8]
#
# """
# 高阶函数帮我们实现了一个for循环
# 模拟一个filter的原理
# """
# lst=[1,2,3,4,5,6,7,8]
# def foo(x):#这个func必须有一个参数
#     return x>4#为真返回True,否则False
# def filter(foo,iter):
#     """
#
#     :param func:
#     :param iter:
#     :return:
#     """
#     new_lst = []
#     for i in iter:
#
#         if func(i)==True:#foo(i)
#             new_lst.append(i)
#     return new_lst
# filter(foo,lst)lstt=[1,2,3,4,5,6,7]print('lstt:', list(filter(lambda x:x<3,lstt)))lst=["三国演义","水浒传","红楼梦","西游记","白蛇传","还珠格格","聊斋"]
#过滤掉长度小于3个字的
#过滤出长度大于2个字的
def func(x):return len(x)>=3
print(list(filter(func,lst)))print(list(filter(lambda x:len(x)>3,lst)))
print(list(filter(lambda x:len(x)>2,lst)))#过滤出年龄大于17的
lst = [{'id':1,'name':'alex','age':18},{'id':1,'name':'wusir','age':17},{'id':1,'name':'taibai','age':16},]
print(list(filter(lambda x:x["age"]>=17,lst)))
#[{'id': 1, 'name': 'alex', 'age': 18}, {'id': 1, 'name': 'wusir', 'age': 17}]print("-------map--------")
#map(函数,可迭代对象)映射
#高阶函数的本质是for循环
lst=[1,2,3]
lst1=[1,2,3]
lst2=[1,2,3]
print(list(map(lambda x,y,z:x+y+z,lst,lst1,lst2)))#[3, 6, 9]print(list(map(str,lst)))#['1', '2', '3']
print(list(map(lambda x:str(x),lst)))#['1', '2', '3']
'''类似于
for i in lst:str(i)
'''print("-----sorted--------")#排序
#sorted(可迭代对象,key=排序规则(函数))
#本质是for循环,每循环一次,调用排序规则,记录,最后进行排序
lst=[1,2,3,4,111,6,7,8,89]
lst1=[1,2,3,123,12,4312,3132,-1111]
print(sorted(lst,reverse=True))#排序 [111, 89, 8, 7, 6, 4, 3, 2, 1]
print(sorted(lst1,key=lambda x:abs(x)))#[1, 2, 3, 12, 123, -1111, 3132, 4312]
print(sorted(lst1,key=abs))#[1, 2, 3, 12, 123, -1111, 3132, 4312]
lst=["春光灿烂猪八戒","红楼梦","康熙王朝","搭错车","上错花轿嫁对郎"]
print(sorted(lst,key=len))#['红楼梦', '搭错车', '康熙王朝', '春光灿烂猪八戒', '上错花轿嫁对郎']dic={1:'abc',3:'ck',2:'boos'}
print(sorted(dic))#[1, 2, 3]
print(sorted(dic.values()))#['abc', 'boos', 'ck']
print(sorted(dic.values(),key=len))#['ck', 'abc', 'boos']lst=[{'id':1,'name':"alex",'age':18},{'id': 2, 'name': "wusir", 'age': 17},{'id': 3, 'name': "taibei", 'age': 16}]
#通过年龄排序
print(sorted(lst,key=lambda x:x['age']))#升序,如果reverse=True,则降序
#[{'id': 3, 'name': 'taibei', 'age': 16}, {'id': 2, 'name': 'wusir', 'age': 17}, {'id': 1, 'name': 'alex', 'age': 18}]
#通过id降序排
print(sorted(lst,key=lambda x:x['id'],reverse=True))
#[{'id': 3, 'name': 'taibei', 'age': 16}, {'id': 2, 'name': 'wusir', 'age': 17}, {'id': 1, 'name': 'alex', 'age': 18}]print("--------max,min-------")
print(max([1,2,3,4,56,-1212,7,8,9,9],key=str))#9,对比ascii码,'
print(min([1,2,3,4,56,-1212,7,8,9,9],))#-1212
print(min([1,2,3,4,56,-1212,7,8,9,9],key=abs))#1print("-----reduce------")
lst=[1,2,3,4,5]
from functools import reduce
def func(x,y):return x+y
print(reduce(func,lst))
#1+2的结果给x,3给y,以此类推

python学习-day9内置函数(高阶)相关推荐

  1. python学习总结----内置函数及数据持久化

    python学习总结----内置函数及数据持久化 抽象基类(了解)- 说明:- 抽象基类就是为了统一接口而存在的- 它不能进行实例化- 继承自抽象类的子类必须实现抽象基类的抽象方法 - 示例:from ...

  2. Python学习(14)--内置函数

    Python学习(14)--内置函数 1.Python内置函数 在Python中有很多的内置函数供我们调用,熟练的使用这些内置函数可以让编写代码时事半功倍,所谓内置函数就是那些Python已经预定义并 ...

  3. 【Python学习】内置函数(不断更新)

    关于常用在for循环中的range函数 python range() 函数可创建一个整数列表,一般用在 for 循环中. 函数语法 range(start, stop[, step]) 参数说明: s ...

  4. python学习之- 内置函数

    内置方法:1:abs():取绝对值2:all():当可迭代对象里所有均为真时结果为真. all([1,2,3])3:any():当可迭代对象里任意一个数据为真结果即为真.any([0,1,2])4:a ...

  5. Python 函数式编程,Python中内置的高阶函数:map()、reduce()、filter()与sorted(),Python中返回函数

    函数式编程 是一种编程范式,比函数更高层次的抽象. 函数式编程将计算视为函数而非指令. 纯函数式编程:不需要变量,没有副作用,测试简单. 支持高阶函数,代码简洁. Python 支持的函数式编程 不是 ...

  6. python内置高阶函数_map()函数~~内置的高阶函数

    ''' map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list, 并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如 ...

  7. python提供的内置函数有哪些_python内置函数介绍

    内置函数,一般都是因为使用频率比较频繁,所以通过内置函数的形式提供出来.对内置函数通过分类分析,基本的数据操作有数学运算.逻辑操作.集合操作.字符串操作等. 说起我正式了解内置函数之前,接触到的是la ...

  8. python 两个内置函数——locals 和globals(名字空间)批量以自定义变量名创建对象

    文章目录 locals 和globals(名字空间)简介 1.局部变量函数locals例子(locals 返回一个名字/值对的字典) 批量创建对象 示例1 示例2 函数内 类内 2.全局变量函数glo ...

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

    楔子 在讲新知识之前,我们先来复习复习函数的基础知识. 问:函数怎么调用? 函数名() 如果你们这么说...那你们就对了!好了记住这个事儿别给忘记了,咱们继续谈下一话题... 来你们在自己的环境里打印 ...

  10. python中如何调用函数_如何调用python中的内置函数?(实例解析)

    对于第一次接触到python这门编程语言的朋友来说,刚刚开始学习python编程的时候对于python函数调用这一方面的了解比较少,在这篇文章之中我们就来了解一下python怎么调用函数. Pytho ...

最新文章

  1. TensorFlow基础11-(小批量梯度下降法和梯度下降法的优化)
  2. 要不是这本书及时出现,本周真撑不下去…
  3. 方舟自建服务器物品叠加mod,10000倍物品叠加 -90%负重 V280
  4. Boost::context模块fiber的jump_mov测试程序
  5. VS与Matlab混合编译 - mexw64 (C++版)
  6. linux 简单Shell程序设计,利用linux下的c语言编程来简单的实现一个shell功能实现!...
  7. Oracle初学者入门指南-什么是 Metalink 或 MOS ?
  8. ai伪造论文实验数据_5篇有关AI培训数据的基本论文
  9. spring总结(01)
  10. python爬去百度百科词条_Python爬虫入门学习实践——爬取小说
  11. delphi 中 的 Split 函数
  12. 《android深入探索》第四章心得
  13. C语言的新扩展typeof
  14. python爬虫难度排行榜_无聊写了一个python爬虫程序,用来爬夕阳试炼场排行榜的...
  15. 超便利在线电路仿真软件
  16. Error: Module “./D:/yongxuworks/youxu-web/node_modules/@umijs/babel-preset-umi/node_modules/@babel/r
  17. ”小糊涂“与美女网站的收费机制
  18. [原]产品经理和韦小宝
  19. Kafka 的消息异常情况~追日
  20. java jar下载_java jar包资源下载

热门文章

  1. Python采集 11月最新 世界疫情数据 + 可视化动态地图,实时查询超稳定
  2. 计算机公式除以键是,excel函数的除法公式(整数及余数)《计算机除法函数公式》...
  3. 用canvas画太极图(一步步详解附带源代码)
  4. NetBeans IDE教程
  5. Cocos游戏打包apk
  6. 国家各个政府机构网站
  7. ubuntu 安装 mujoco-py
  8. 值得收藏几个Web木马后门查杀扫描工具
  9. C#多进程文件读写的锁处理
  10. Android圆角ImageView的几种实现方式(包含四个角的分别设置)