Python中多个列表的Map问题

vq8itlhq  于 2023-02-15  发布在  Python
关注(0)|答案(3)|浏览(103)

我有两个列表J1A1。我还有一个列表J2,其中包含J1中的一些元素。我想使用A2打印A1中的相应值。我给出了当前输出和预期输出。

J1 = [1, 7, 9, 11]
A1 = [2.1,6.9,7.3,5.4]

J2 = [1, 9]
J2,A2=map(list, zip(*((a, b) for a, b in zip(J2,A1))))
print(A2)

当前输出为

[2.1, 6.9]

预期输出为

[2.1, 7.3]
prdp8dxp

prdp8dxp1#

另一个变体,更接近于原始版本:

A2 = [a for a,j in zip(A1,J1) if j in J2]
vom3gejh

vom3gejh2#

J1 = [1,7,9,11] A1 = [2.1,6.9,7.3,5.4]
J2 = [1,9]
A2 = [A1[J1.index(a)]用于J2中的a]打印(A2)

fxnxkyjh

fxnxkyjh3#

使用J1中的键和A中的值定义一个dict,然后使用J2中的值作为在新的dict中查找的键。

>>> from operator import itemgetter
>>> d = dict(zip(J1, A1))
>>> A2 = list(itemgetter(*J2)(d))
>>> A2
[2.1, 7.3]

相关问题