如何在python中从2个数组中创建列表?

如何在python中从2个数组中创建列表?,python,python-3.x,Python,Python 3.x,我有两个数组,我想制作一个列表,第一个元素是[array one的第一个元素,'array 2的第一个元素'],依此类推。 基本上,列表中的每个元素都是一个列表 lista = [1, 2, 3, 4] listb = [a, b, c, d] 期望输出: listc = [1a, 2b, 3c, 4d] 我相信你在描述zip的工作。此外,从注释中可以看出,您希望第二个元素是一个字符串,因此下面是如何: >>> a = [1, 2, 3] >>> b =

我有两个数组,我想制作一个列表,第一个元素是[array one的第一个元素,'array 2的第一个元素'],依此类推。 基本上,列表中的每个元素都是一个列表

lista = [1, 2, 3, 4]
listb = [a, b, c, d]
期望输出:

listc = [1a, 2b, 3c, 4d]

我相信你在描述zip的工作。此外,从注释中可以看出,您希望第二个元素是一个字符串,因此下面是如何:

>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> [[e1, str(e2)] for e1, e2 in zip(a, b)]
[[1, '4'], [2, '5'], [3, '6']]
你应该在这里用拉链。它通过同时迭代参数来运行。您可以这样使用它:

[ [first, str(second)] for first, second in zip(a, b)]
或者,您可以这样做:

list(zip(a, [str(x) for x in b]))

这会给你一个元组列表,而不是列表列表,但如果你不介意不变性,那可能就是你想要的。

如果我想让b用单引号括起来,那么?像[[1,'4'],[2,'5'],[3,'6']]一样,我希望列表中的每个元素都是一个列表。我不理解第一个注释。输入是两个数字列表还是一个数字列表和一个字符串列表?我想他想要[e1,stre2]表示e1,e2表示zipa,b]。别问我为什么。更新。是的,为什么,为什么?请包括所需的输出。和输入的样本