首页 > 编程语言 >Python中四大高阶函数,你认识几个

Python中四大高阶函数,你认识几个

时间:2023-11-18 16:45:10浏览次数:36  
标签:函数 Python list ret fun print sorted 高阶

1.匿名函数

def name(a,b):
    return a+b

f=lambda a,b:a+b
print(f(15,15))

2.map函数

第一个参数接收一个函数名,第二个参数接收一个可迭代对象,利用map,lambda表达式将所有偶数元素加100

def fun(a,b):
    return a+b

ret=map(fun,[1,2,3],[4,5,6])
print(list(ret))

3.sorted函数

"""sorted排序(由负及正)"""
list=[1,2,3,4,0,-1,-2,-3]

print(sorted(list,key=lambda x:x))

"""sorted排序(绝对值)"""
list=[1,2,3,4,0,-1,-2,-3]

print(sorted(list,key=abs))

sorted() 函数对所有可迭代的对象进行排序操作。
sort 与 sorted 区别:

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。 list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

sorted 语法:

sorted(iterable[, cmp[, key[, reverse]]])

参数说明:

  • iterable -- 可迭代对象。
  • cmp -- 比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。
  • key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
  • reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

4.reduce函数

"""reduce()函数(最好用来求总和总乘)"""
from functools import reduce
def fun(a,b):
    return a+b
ret=reduce(fun,[x for x in range(1,101)])
print(ret)#1到100的总和为5050
ret=reduce(fun,[x for x in range(1,101)ifx%2==0])
print(ret)#1到100的偶数总和为2550
ret=reduce(fun,[x for x in range(1,101)ifx%2==1])
print(ret)#1到100的奇数总和为2500

5.filter函数

"""filter()函数(能够去出符合条件的元素)"""
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
def fun(a):
    return a%2==0
ret=filter(fun,range(1,101))
for x in ret:
    print(x)

filter()函数可以对序列做过滤处理,就是说可以使用一个自定的函数过滤一个序列,把序列的每一项传到自定义的过滤函数里处理,并返回结果做过滤。

最终一次性返回过滤后的结果。

filter()函数有两个参数:

  • 第一个,自定函数名,必须的
  • 第二个,需要过滤的列,也是必须的

标签:函数,Python,list,ret,fun,print,sorted,高阶
From: https://www.cnblogs.com/xxpythonxx/p/17840706.html

相关文章

  • python模拟题二
    1. (10.)   实现以下功能:从键盘输入4个数字,各数字采用空格分隔,对应变量x0,y0,xl,y1.计算两点(x0,y0)和(x1,y1)之间的距离,屏幕输出这个距离,例如:键盘输入:0135   屏幕输出:5.00  提示:importmathnums=input("用空格分隔的四个数字:")#利用nums.spl......
  • Python字典六种类型概述
    1.引言看到这个标题,你可能会觉得奇怪,事实上在Python的标准库中共有6种字典类型!在某些情形下,你可能会觉得标准的Python字典dict,并不能完全符合你的需求。在本文中,我们将讨论Python中其他5个鲜为人知的词典及其特性。闲话少说,我们直接开始吧!2.字典的定义在Python中,Dictionary(dict)是......
  • 复变函数
    一、复变函数的基本知识由于在实数域中无法表示负数开根号问题,故将数系进行扩充,定义有\(i^{2}=-1\)1.复数的表示法\[代数形式:z=x+iy\qquad其中i为虚部单位\]\[指数形式:z=re^{i\theta}\qquad其中r为其幅值,\theta为幅角\]\[三角形式:根据欧拉公式,有:z=r(\cos\theta......
  • 简单的用Python实现一下JS逆向解密,采集空气质量数据
    最近天气降温厉害,咱们用Python来分析一下空气质量如何~话不多说,我们直接开始上手。环境以及模块环境使用Python3.8Pycharmnodejs模块使用importrequestsimportexecjsimportjsonrequests和execjs都是第三方模块,需要手动安装,直接pipinstall......
  • Python全栈开发从入门到入土【新版】
    【Python初级】【一】计算机基础【补充】计算机五大组成部分【二】编程语言和Python语言介绍【三】Python解释器和Pycharm的安装【补充】Python相关补充【补充】Pycharm相关补充【四】Python语法入门之常量和变量【五】Python基础之垃圾回收机制【六】Python基础之基本......
  • 【3.1】Python相关补充
    【一】PIP换源【1】问题描述在使用Python时,我们经常需要用到pip安装第三方包。但是,在某些情况下,由于网络速度慢或者其他各种原因,pipinstall会非常慢,甚至可能无法完成。为了解决这个问题,我们提供以下几种方法。【2】永久更换pip源一般来说,我们使用的是默认的pip源,这个源......
  • 【8.0】Python基础之基本运算符
    【一】参考网站参考网站(菜鸟教程):https://www.runoob.com/python/python-operators.html【二】算数运算符python支持的算数运算符与数学上计算的符号使用是一致的我们以x=9,y=2为例来依次介绍它们【1】加法运算符+x=9y=2result=x+yprint(result)#输出:1......
  • 【7.0】Python基础之程序与用户交互
    【一】什么是与用户交互交互的本质就是输入、输出用户交互就是人往计算机中input/输入数据,计算机print/输出结果【二】为什么要与用户交互为了让计算机能够像人一样与用户沟通交流过去我们去银行取钱,用户需要把帐号密码告诉柜员而现在,柜员被ATM机取代ATM机就是一台......
  • 【11.0】Python基础之可变和不可变数据类型
    【一】堆【0】引入https://www.hello-algo.com/chapter_heap/堆就像是山川的峰峦,它们层叠起伏、形态各异。每一座山峰都有其高低之分,而最高的山峰总是最先映入眼帘。【1】堆的介绍「堆heap」是一种满足特定条件的完全二叉树,主要可分为图8-1所示的两种类型。......
  • 【10.0】Python基础之数据类型的内置方法
    【一】数据类型内置方法介绍数据类型是用来记录事物状态的,而事物的状态是不断变化的(如:一个人年龄的增长(操作int类型)单个人名的修改(操作str类型),学生列表中增加学生(操作list类型)等),这意味着我们在开发程序时需要频繁对数据进行操作为了提升我们的开发效率python针对这些常用......