python - 如何使用列表推导式使每个元素成为 zip() 的列表?

标签 python list zip tuples list-comprehension

keys = zip([x for x in range(0, 10)], [x for x in range(0, 10)])
print keys

结果(包含元组的列表):

[(0, 0), (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9)]

如何使每个单独的元素成为一个列表,而不是元组?以下示例不起作用:

keys = list(zip([x for x in range(0, 10)], [x for x in range(0, 10)]))

以下示例也不起作用:

keys = zip([x for x in range(0, 10)], [x for x in range(0, 10)])
for i in keys:
    i = list(i)
print keys

最佳答案

您可以使用此列表理解将元组 zip 生成的结果转换为列表:

>>>keys = [list(t) for t in zip(range(10), range(10))]
>>>keys
[[0, 0], [1, 1], [2, 2], [3, 3], [4, 4], [5, 5], [6, 6], [7, 7], [8, 8], [9, 9]]

顺便说一下,[x for x in range(0,10)] 有点过分了,只需执行 range(10)

没有列表理解的另一种方法是: map(list, zip(range(10), range(10))) 但对于 Python 3,这不会返回列表,它会返回一个 map 对象。

关于python - 如何使用列表推导式使每个元素成为 zip() 的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22083778/

相关文章:

python - 使用python绑定(bind)/连接到网络接口(interface)卡

python - 库 - google.cloud : Object has no attribute 'schema_from_json'

php - 在 PHP 中压缩文件夹的内容

jquery - 获取 jQuery UI Selectable 的数据属性

java.util.zip.ZipException : invalid compression method

python - 如何有效地将数百万条记录从大型压缩 csv 文件插入到 mongo DB 中?

python - 增长 numpy 数值数组的最快方法

python - cv2.addWeighted 除了一些颜色

python - 如何在列表理解python中构建两个for循环

java - 关于双向链表