我想知道是否可以用更好的方式编写以下代码。基本上,我想为 (x, y)
网格计算 z = f(x, y)
。
a = linspace(0, xr, 100)
b = linspace(0, yr, 100)
for i in xrange(100):
for j in xrange(100):
z[i][j] = f(a[i],b[j])
最佳答案
是的。您在问题中提出的代码很好。
永远不要认为几行是“好”或“酷”。重要的是清晰度、可读性和可维护性。其他人应该能够理解您的代码(您应该在 12 个月内理解它,当您需要查找错误时)。
许多程序员,尤其是年轻的程序员,认为“聪明”的解决方案是可取的。他们不是。这就是 python 社区的优点。与其他人相比,我们受该错误的影响要小得多。
关于python - 以更好、更短的方式重写双循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4475704/