python中的嵌套列表理解

嵌套列表是列表中的列表。Python提供了一些功能来优雅地处理嵌套列表,并应用通用功能来操纵嵌套列表。在本文中,我们将看到如何使用列表推导在python中创建和使用嵌套列表。

创建矩阵

创建矩阵涉及创建一系列行和列。通过将一个带for循环的python列表放在另一个带for循环的python列表中,我们可以使用for循环来创建矩阵行和列。

示例

matrix = [[m for m in range(4)] for n in range(3)]

print(matrix)

运行上面的代码将为我们提供以下结果:

[[0, 1, 2, 3], [0, 1, 2, 3], [0, 1, 2, 3]]

从嵌套列表过滤

我们可以通过在子列表中使用for循环来使用具有过滤功能的列表理解功能。在下面,我们有一个二维列表,在较大列表中有一层子列表。我们从每个嵌套列表中访问选择性元素。通过使用过滤条件。

示例

years = [['January', 'February', 'March'], ['April', 'May', 'June'], ['July', 'August', 'September'],['October','November','December']]

# Nested List comprehension with an if condition

years = [years for sublist in years for years in sublist if len(years) <= 5]

print(years)

运行上面的代码将为我们提供以下结果:

['March', 'April', 'May', 'June', 'July']

展平嵌套子列表

我们还可以创建一个嵌套列表,并通过创建单个列表而不在其中包含任何子列表来展平它。

示例

nested_list = [[1] ,[17, 19], [21,23,25], [32,35,37,39]]

# Nested List Comprehension to flatten a given 2-D matrix

flattened_list = [value for sublist in nested_list for value in sublist]

print(flattened_list)

运行上面的代码将为我们提供以下结果:

[1, 17, 19, 21, 23, 25, 32, 35, 37, 39]

以上是 python中的嵌套列表理解 的全部内容, 来源链接: utcz.com/z/316186.html

回到顶部