Python|将 3D 列表转换为 2D 列表的方法
列表是Python中一种常见的数据结构类型。虽然我们使用了列表和 2d 列表,但 3d 列表的使用每天都在增加,主要是在 Web 开发的情况下。
给定一个 3D 列表,任务是将其转换为 2D 列表。在从事项目工作或为开源做出贡献时会遇到这些类型的问题。
以下是实现上述任务的一些方法。
Input:
[[[3], [4]], [[5], [6]], [[7], [8]]]
Output:
[[3], [4], [5], [6], [7], [8]]
方法 #1:使用简单迭代将 3D 列表转换为 2D 列表。
# Python code to convert a 3D list into a 2D list
# Input list initialization
Input = [[[3], [4]], [[5], [6]], [[7], [8]]]
# Output list initialization
Output = []
# Using iteration
for temp in Input:
for elem in temp:
Output.append(elem)
# printing output
print("Initial 3d list is")
print(Input)
print("Converted 2d list is")
print(Output)
输出:
Initial 3d list is
[[[3], [4]], [[5], [6]], [[7], [8]]]
Converted 2d list is
[[3], [4], [5], [6], [7], [8]]
方法 #2:使用列表理解将 3D 列表转换为 2D 列表
# Python code to convert a 3D list into a 2D list
# Input list initialization
Input = [[[1, 1], [2, 7]], [[3], [4]], [[6, 5], [6]]]
# Using list comprehension
Output = [elem for twod in Input for elem in twod]
# printing output
print("Initial 3d list is")
print(Input)
print("Converted 2d list is")
print(Output)
输出:
Initial 3d list is
[[[1, 1], [2, 7]], [[3], [4]], [[6, 5], [6]]]
Converted 2d list is
[[1, 1], [2, 7], [3], [4], [6, 5], [6]]