5个独特的Python函数

92 阅读4分钟

5个独特的Python函数

学习这些适用于列表的Python函数

函数是一些操作的预定义代码,在Python编程中发挥着重要作用。在这篇文章中,了解一些能让你与列表一起工作的函数。学习在Python中使用列表或迭代器是至关重要的。这里有几个函数可以让你这样做。

1.1. accumulate

accumulate 函数处理一个像字典、列表或图元一样的可迭代对象。当你需要每次迭代的中间步骤值时,可以使用这个函数。为了更好地理解,请看下图;它展示了 accumulate 函数的工作情况。

Syntax: itertools.accumulate(iterable[, function, initializer])

代码。

from itertools import accumulatelist1 = [1,2,3,4,5]def function(x, y):    return x+yprint(list(accumulate(list1,function)))

运行

  • 为了理解 accumulate ( ) 函数的工作,我们有一个基本程序,其中我们从 itertools 模块中导入了 accumulate。
  • 在这个程序中,我们考虑了一个简单的列表和一个求和函数。
  • 第一步从列表中返回一个 1 的值。
  • 接下来的步骤将返回值与列表中的下一个值相加,形成3、6、10和15的值。
  • 经过所有的迭代,形成一个新的列表[ 1, 3, 6, 10, 15],这是输出。

2.2. 枚举。

Enumerate是一个内置函数,它在不使用任何循环的情况下为可迭代的列表添加一个计数器。一个列表被转换为一个带有索引和值对的对象。请看下图,该图展示了枚举函数的工作原理。

Syntax: enumerate(iterable, start)

代码

list1 = ['A', 'B', 'C', 'D', 'E']object1 = enumerate(list1)print(list(object1))

运行

  • 枚举函数将一个计数器添加到一个可迭代的对象中。我们有一个程序来理解这个函数。
  • Enumerate函数将一个列表变成一个对象。
  • 该对象由一个列表对组成;每个对由索引值和其列表元素组成。
  • 你可以指定起始索引值,或者默认情况下,从零开始。

3.Reduce( )

Reduce是一个对所有列表元素进行相同操作的函数,并在所有迭代后最终返回一个单一元素。为了更好地理解,请看下图。它展示了 reduce( )函数的工作情况。

Syntax: reduce(function,sequence)

代码。

import functoolsdef sum(a,b):    return a+bnumbers = [1,2,3,4,5]result = functools.reduce(sum, numbers)print(result)

运行

  • Reduce函数在一个被称为functools的模块中可用。
  • 我们有一个程序来理解 reduce 函数,其中我们考虑了一个简单的列表 [1,2,3,4,5] 和一个添加两个元素的函数。
  • 在每一步,它接受两个输入并返回一个元素。
  • 而列表的总和将是15的输出。

4.4.Zip

Zip是一个很好的内置函数,对于梳理两个或更多的数据集很有用。这个函数将两个或更多的可迭代数据作为输入,并将其压缩,形成一个图元列表。请看该图,它展示了Zip函数的工作原理。

Syntax:zip(*iterables)

代码

key = ["First_Name", "Last_Name", "Location", "Age"]value = ["Mick", "John", "USA", "40"]user_info = list(zip(key, value))print(user_info)

运行

  • 在这个例子中,我们将两个简单的数据集合并,形成另一个数据集。
  • Zip函数映射列表并将其变为图元。
  • 每一对都是通过索引值从给 zip 函数的列表中得到的。
  • 你也可以用同样的zip函数解压缩图元的列表。

5.5.map

Map()是一个内置函数,它将指定的函数应用于可迭代的所有项目。Map可以接受一个迭代器或多个迭代器作为输入。地图对所有元素使用相同的操作,并返回与iterable相同数量的元素。请看下图,它展示了map函数的工作原理。

Syntax: map(function,iterables)

代码

def add_list(a,b):    return a+bres = list(map(add_list, [1,  2, 3], [ 4, 5,6]))print(res)

运行

  • 我们有一个简单的程序来理解map函数,其中我们考虑了两个列表[1, 2, 3], [ 4, 5, 6]。
  • 我们定义了一个函数来添加两个列表中的元素。
  • 它的结果是输出 [5,7,9]。