为什么我的 `zip()` 函数生成空列表?

ID:19919 / 打印

为什么我的 `zip()` 函数生成空列表?

zip() 函数中的疑惑

在你的代码示例中,你使用 zip() 函数将三个列表中的元素配对,并期望得到三个包含配对元素的新列表。然而,你却发现出现了两个空列表。这究竟是怎么回事?

zip() 函数是 python 中一个用于合并多个可迭代对象中的元素的内置函数。它返回一个包含配对元素的迭代器,而不是列表。因此,当你尝试遍历 zip() 返回的结果时,你实际上是消耗了它。一旦你遍历完毕,迭代器便成为空,无法继续产生元素,导致你得到了两个空列表。

要解决这个问题,你可以使用 list() 函数将迭代器转换为列表。这将创建一个包含 zip() 返回的配对元素的列表,而不会消耗迭代器。代码修改如下:

zipped = list(zip(list1, list2, list3))

现在,zipped 将是一个包含配对元素列表的列表,而不是空列表。

上一篇: Python3 如何将列表中多个字符串字典合并为一个字典?
下一篇: Python 程序:如何对数字列表进行排序

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。