学习笔记,仅供参考,有错必究
参考文献:python–列表、数组扁平化;你知道如何将python中嵌套的列表扁平化吗?
列表扁平化
- 方案1
print(sum([[1, 2, 3], ["sa", "e"]], []))
# 输出
[1, 2, 3, 'sa', 'e']
- 方案2
def flat(l: list):
for _ in l:
if isinstance(_, list):
yield from flat(_)
else:
yield _
lst = [1, [[[[3, 3], 5]]], [[[[[[6], 8]], "aaa"]], 250]]
print([_ for _ in flat(lst)])
# 输出
[1, 3, 3, 5, 6, 8, 'aaa', 250]
numpy数组扁平化
import numpy as np
arr = np.array([[1,2],[3,4]])
arr.ravel()
arr.flatten()
# 输出
array([1, 2, 3, 4])
array([1, 2, 3, 4])