Python列表理解中的限制分配?

hhh*_*hhh 1 python list-comprehension

这个例子是从这里偷来的,但是我的目标有一个限制,所以输出是[8,12,-54].你如何用列表推导来做到这一点?我需要以某种方式引用索引x_{i}*y_{i},我在那里添加循环犹豫不决,是否有一些优雅的解决方案?

>>> vec1 = [2, 4, 6]
>>> vec2 = [4, 3, -9]
>>> [x*y for x in vec1 for y in vec2]
[8, 6, -18, 16, 12, -36, 24, 18, -54]
Run Code Online (Sandbox Code Playgroud)

Raf*_*ler 10

[x * y for x, y in zip(vec1, vec2)]
Run Code Online (Sandbox Code Playgroud)