单个语句中的For循环

时间:2019-02-21 14:07:55

标签: python

请考虑以下示例:

set_x = [1,1,1,1,1]
set_y = [2,2,2,2,2]
x += (item_x * item_y for item_x, item_y in set_x and set_y)

显示错误

TypeError: unsupported operand type(s) for +=: 'int' and 'generator'

请帮助解决此问题

1 个答案:

答案 0 :(得分:2)

您要使用zip聚合来自多个迭代器的元素:

[item_x * item_y for item_x, item_y in zip(set_x,set_y)]
# [2, 2, 2, 2, 2]

因此使用:

x += (item_x * item_y for item_x, item_y in zip(set_x,set_y))