欢迎访问宙启技术站
智能推送

Python内置函数:range、map、filter、reduce、enumerate、zip等

发布时间:2023-07-02 03:34:58

Python是一种非常强大和灵活的编程语言,提供了许多内置函数来增加编程效率和简化代码。以下是Python的一些常用内置函数:

1. range(): 创建一个整数序列,可用于循环和迭代。它接受起始值、结束值和步长作为参数,返回一个由这些整数组成的序列。例如,range(1, 10, 2)将返回一个包含1、3、5、7、9的序列。

2. map(): 将一个函数应用于一个或多个可迭代对象的每个元素,并返回一个包含结果的迭代器。例如,map(lambda x: x*2, [1, 2, 3])将返回一个包含2、4、6的迭代器。

3. filter(): 用于从可迭代对象中筛选出符合条件的元素,并返回一个包含这些元素的迭代器。它接受一个函数和一个可迭代对象作为参数,函数返回True表示该元素被接受,反之亦然。例如,filter(lambda x: x > 5, [1, 6, 2, 8, 3])将返回一个包含6、8的迭代器。

4. reduce(): 在Python 2中是一个内置函数,在Python 3中被移到了functools模块中。它接受一个函数和一个可迭代对象作为参数,使用函数对可迭代对象中的元素进行累积计算。例如,reduce(lambda x, y: x + y, [1, 2, 3, 4])将返回10,即1+2+3+4的结果。

5. enumerate(): 返回一个由可迭代对象的索引和值组成的迭代器。它接受一个可迭代对象作为参数,可用于循环中获取当前元素的索引和值。例如,for i, v in enumerate(['a', 'b', 'c']): print(i, v)将输出0 a、1 b、2 c。

6. zip(): 接受多个可迭代对象作为参数,返回一个由这些对象的对应元素组成的迭代器。它将每个可迭代对象中的当前元素打包在一起。如果传递给zip()的可迭代对象长度不一致,将以最短长度为准。例如,zip([1, 2, 3], ['a', 'b', 'c'])将返回一个包含(1, 'a')、(2, 'b')、(3, 'c')的迭代器。

除了上述函数,Python还有许多其他有用的内置函数,如len()用于获取序列的长度、sorted()用于对可迭代对象进行排序、min()和max()用于获取最小值和最大值等等。这些内置函数可以帮助我们更高效地编写Python代码,提高开发效率。