Python List of List 的列表理解

Python List Comprehension With List of List

我有一个列表列表(实际列表更长):

a = [[1, 2], [5, 8], [10, 4], [15, 9]]

我需要在列表理解中使用此列表。对于第一个循环,1 和 2 将用作 i 和 j。对于第二个循环,5 和 8 将用作 i 和 j。等等。

以下代码不正确,但我怎样才能让它工作?我不想拆分列表。非常非常少的计算成本很重要。

[some_work_with(i, j) for i, j in zip(a[][0], a[][1])]

有些作品可能是 print(i, j)

这里不需要 zip,只需在遍历元素时解压元素

[some_work_with(i, j) for i, j in a]
def func(i,j):
    return [i-1, j+1]

a = [[1, 2], [5, 8], [10, 4], [15, 9]]

print ([func(x[0], x[1]) for x in a])

输出:

[[0, 3], [4, 9], [9, 5], [14, 10]]

如果您愿意,也可以使用此语法:

print ([func(i, j) for i, j in a])

为什么不干脆

[some_work(pair[0], pair[1]) for pair in a]

例如

[f'i : {pair[0]} and j : {pair[1]}' for pair in a]

这将导致:

['i : 1 and j : 2', 'i : 5 and j : 8', 'i : 10 and j : 4', 'i : 15 and j : 9']