首页 > 编程语言 >python中常见函数

python中常见函数

时间:2023-11-22 16:47:05浏览次数:31  
标签:function 元素 函数 python 常见 reduce numbers iterable

filter, reduce, 和 map 是Python中用于对集合数据进行处理和转换的内置函数。它们分别用于筛选、归约和映射集合中的元素。

filter 函数:

filter(function, iterable) 用于筛选集合中的元素。它接受一个函数 function 和一个可迭代的对象 iterable,并返回一个包含 iterable 中满足 function 条件的元素的新迭代器。

# 示例:使用 filter 过滤出偶数
numbers = [1, 2, 3, 4, 5, 6, 7, 8]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
# even_numbers 现在包含 [2, 4, 6, 8]

reduce 函数:

reduce(function, iterable[, initializer]) 用于对集合中的元素进行累积操作。它接受一个函数 function 和一个可迭代的对象 iterable,并返回一个值,该值是通过将 function 应用于 iterable 中的元素进行累积得到的。你还可以提供一个可选的初始值 initializer。

from functools import reduce

# 示例:使用 reduce 计算列表元素的累积乘积
numbers = [1, 2, 3, 4]
product = reduce(lambda x, y: x * y, numbers)  # 结果是 24

map 函数:

map(function, iterable, ...) 用于对集合中的每个元素应用同一个函数。它接受一个函数 function 和一个或多个可迭代的对象 iterable,并返回一个新的迭代器,其中每个元素都是将 function 应用于输入集合中对应元素的结果。

# 示例:使用 map 将列表中的元素平方
numbers = [1, 2, 3, 4]
squared_numbers = list(map(lambda x: x**2, numbers))
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
# squared_numbers 现在包含 [1, 4, 9, 16]

这些函数在处理集合数据时非常有用,可以减少手动编写循环的工作,提高代码的简洁性和可读性。需要注意的是,Python 3 中的 reduce 函数被移到 functools 模块中,因此需要使用 from functools import reduce 导入。

标签:function,元素,函数,python,常见,reduce,numbers,iterable
From: https://www.cnblogs.com/djdjdj123/p/17849666.html

相关文章

  • python多线程中一种错误的写法
    直接先上错误代码:importmultiprocessingdeffirst_way():init=3defprocess_function(item):result=item*initreturnresultdata=[1,2,3,4,5,6,7,8,9,10]pool=multiprocessing.Pool(processes=4)#创建一个......
  • Python基础知识
    一、先置知识1、标识符标识符由字母、数字、下划线组成。所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。标识符是区分大小写的。以下划线开头的标识符是有特殊意义的。以单下划线开头_foo的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用**fr......
  • 如何在Python中向一个集合添加值
    用Set.add()函数向一个集合只添加一个值从数学上讲,集合是一个在逻辑上有联系的不同对象的集合。在Python中,集合是一个内置的数据类型,它是无索引的和不可变的。这意味着我们可以通过一些特定的索引来访问集合项,而且我们不能修改集合内的现有数据。我们可以通过在Python中创建一个......
  • 使用Python协程并发测试cdn响应速度
    代码干净清爽才能看着赏心悦目:#!/usr/bin/envpython3.11importtimefromcontextlibimportcontextmanagerfromenumimportStrEnumimportanyioimporthttpx@contextmanagerdeftimeit(msg:str):start=time.time()yieldcost=time.time()-sta......
  • mybatis plus order by 不支持convert函数
    最近业务上有个需求,要按照企业名称中文进行排序显示。项目使用的是mybatisplus+mysql从网上看到的排序解决方法是使用mysql的convert函数:select*from客户表where***orderbyconvert(`企业名称`usingGBK);为什么要使用convert函数那?因为一般使用的数据编码是utf-8,m......
  • python wordcloud生成词云
    #!/usr/bin/envpython#coding:utf-8#pipinstallwordcloud#pipinstallmatplotlibimportwordcloudimportmatplotlib.pyplotaspltimportnumpyasnpfromPILimportImagetext="""给你一瓶魔法药水喝下去就不需要氧气给你一瓶魔法药水喝下去就不怕身体......
  • 并发请求函数的实现
    实施步骤:初始化结果和执行数组:创建数组来存储每个请求的结果并跟踪当前正在执行的请求。为单个请求编写异步函数:该函数发送请求,存储结果,并从执行数组中删除已完成的请求。对并发请求使用循环和Promises:利用循环初始化一定数量的并发请求并将它们添加到执行数组中。递归调用函......
  • Python全局解释器锁GIL机制
    全局解释器锁GlobalInterpreterLock,CPython在解释器级别的一把锁,叫GIL全局解释器锁。程序编译成字节码,程序想跑多线程,但是GIL保证CPython进程中,同一时刻只能有一个线程执行字节码。所以,哪怕是在多CPU的情况下,即使每个线程恰好调度到了每个CPU上,有了这把大锁,同时只能有一个CPU......
  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-32-JavaScript的调用执行-下篇
    1.简介 在实际工作中,我们需要对处理的元素进行高亮显示,或者有时候为了看清楚操作过程和步骤我们需要跟踪鼠标点击了哪些元素需要标记出来。虽然很少遇到,但是为了以后大家可以参考或者提供一种思路,今天宏哥就在这里把这种测试场景playwright是如何处理的讲解和分享一下。2.用法......
  • [951] Understanding the pattern of "(.*?)" in Python's re package
    InPython'sregularexpressions, (.*?)isacapturinggroupwithanon-greedyquantifier. Let'sbreakdownthecomponents:(and ):Parenthesesareusedtocreateacapturinggroup.Thisallowsustocaptureaportionofthematchedtext..*?:......