for列表理解的子句可以指定多个变量:
[x + y for x, y in [(1, 2), (3, 4), (5, 6)]] # 出:[3,7,11] [x + y for x, y in zip([1, 3, 5], [2, 4, 6])] # 出:[3,7,11]
这就像常规for循环一样:
for x, y in [(1,2), (3,4), (5,6)]: print(x+y) # 3 # 7 # 11
但是请注意,如果开始理解的表达式是一个元组,则必须将其括起来:
[x, y for x, y in [(1, 2), (3, 4), (5, 6)]] # SyntaxError:语法无效 [(x, y) for x, y in [(1, 2), (3, 4), (5, 6)]] # 出:[(1,2),(3,4),(5,6)]