展平列表的列表
展平列表的列表涉及将嵌套结构转换为单级列表。在 Python 中,可以使用多种方法来实现这一点。
嵌套列表理解
最有效的方法是嵌套列表理解:
flat_list = [x for xs in xss for x in xs]
此表达式迭代每个内部列表并将每个元素附加到结果平面
使用运算符
您还可以使用运算符来展平列表:
flat_list = [] for xs in xss: flat_list = flat_list + xs
此方法比列表理解稍慢由于重复的列表串联。
将 sum 与 an 一起使用空列表
另一种方法使用带有空列表的 sum 函数:
flat_list = sum(xss, [])
此方法比列表理解效率低,特别是对于大型列表。
使用functools.reduce
最后,您可以使用 functools.reduce 函数:
from functools import reduce flat_list = reduce(lambda xs, ys: xs + ys, xss)
同样,此方法比列表理解慢。
性能使用 timeit 模块的测试表明列表理解是最快的方法。
以上是在 Python 中展平列表列表的最有效方法是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!