有没有办法简化 3d 字段上的 3 嵌套循环?代码如下:
from itertools import product
for kx, ky, kz in product(freq, freq, freq):
k = np.sqrt(kx**2+ky**2+kz**2)
if int(k+0.5) < N/2.0:
yaxes[field][int(k+0.5)] += A[kx][ky][kz]
A 的形状是 (N,N,N),freq 是长度为 N 的特殊迭代。也许有一个 numpy-tool 来执行此代码,因为这需要很长。