不等长列表的 Pythonic 交织
交织两个不同长度列表的 Pythonic 解决方案比提供的循环更高效、更优雅方法。通过利用切片,可以通过一行代码完成该任务。
考虑以下示例,其中第一个列表比第二个列表多包含一个项目:
list1 = ['f', 'o', 'o'] list2 = ['hello', 'world']
所需的输出是:
['f', 'hello', 'o', 'world', 'o']
使用切片,这可以实现为如下所示:
result = [None]*(len(list1)+len(list2)) result[::2] = list1 result[1::2] = list2
此方法创建一个新列表 result,它有足够的空间来容纳两个输入列表中的元素。切片运算符 [::2] 和 [1::2] 将每个其他元素分配给相应的输入列表。
结果是一个新列表,根据需要交替两个输入列表中的元素。这种方法比循环方法更简洁、高效、Pythonic。
以上是如何在 Python 中有效地交错不等长列表?的详细内容。更多信息请关注PHP中文网其他相关文章!