python - 将具有动态范围的嵌套循环转换为列表推导
问题描述
我希望将以下嵌套的 for 循环转换为列表理解。甚至可能吗?
for i in range(N):
for j in range(i,N):
a = function(i,j) #symmetric in i and j
M[i,j] = a
M[j,i] = a
有没有办法将这种特定类型的嵌套 for 循环转换为 Pythonic 的列表理解?
请注意,我不是在寻找以下内容:
M = [function(i,j) for i in range(N) for j in range(N)]
与理想的列表理解相比,这将使代码的运行时间增加一倍。