1

有没有办法用字典理解替换以下代码?

d = {}

for i in xrange(A):
    for j in xrange(B):

         d[(i, j)] = f(i, j)

如果这有什么不同,我正在使用 Python2.7。

4

2 回答 2

5
d = {(i,j):f(i,j) for i in xrange(A) for j in xrange(B)}
于 2012-04-23T10:15:21.200 回答
2

将嵌套循环替换为itertools.product

from itertools import product
d = { p: f(*p) for p in product(range(A), range(B))}
于 2012-04-23T10:56:51.793 回答