【问题标题】:How to convert elements of two lists into a list of lists in python [duplicate]如何将两个列表的元素转换为python中的列表列表[重复]
【发布时间】:2022-01-18 06:56:45
【问题描述】:

我有一个简单的问题,我发现它有问题,我需要一些帮助。我想将两个列表转换为数据点。

示例: 数据: A = [1,2,3,4,5] B = [6,7,8,9,10]

想要的输出: C = [[1,6], [2,7], [3,8], [4,9], [5,10]]

这就像数学中的双射函数,但我不知道如何在代码中实现它。它不必是列表。向量、矩阵、数组。真的什么都会。我有成千上万的观察结果,我想要一种快速的方法以上述方式对它们进行分组,以便我可以分析它们。现在,我正在通过从不同的软件导出它来做一堆变通方法。我尝试过使用 For 循环甚至索引,但我似乎无法做到正确。编写代码的新手!请帮忙!

附:我正在使用 Python。

【问题讨论】:

  • 你应该知道 Python 的内置函数。看看zip

标签: python list


【解决方案1】:
A = [1,2,3,4,5]
B = [6,7,8,9,10]
C = list(map(lambda x, y:[x,y], A, B))
print (C)

这将给出以下输出

[[1, 6], [2, 7], [3, 8], [4, 9], [5, 10]]

希望这会有所帮助:)

【讨论】:

  • 哇!这实际上工作得如此之快!非常感谢,朋友!
【解决方案2】:
import itertools
A = [1,2,3,4,5]
B = [6,7,8,9,10]

list(itertools.izip(A,B))

结果:

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

这样的列表理解:

[list(k) for k in itertools.izip(A,B)]

结果:

[[1, 6], [2, 7], [3, 8], [4, 9], [5, 10]]

【讨论】:

  • Python 3 自 2008 年以来已经发布。您应该使用 zip()itertools 不再有 izip()。即使在 python2 中,plain old zip 也是一个更好的选择。
  • 非常感谢!我不知道有这么多方法可以做到这一点!这非常有帮助!再次感谢。
猜你喜欢
  • 2017-03-24
  • 1970-01-01
  • 2017-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-25
  • 2021-04-26
  • 1970-01-01
相关资源
最近更新 更多