我想知道以下代码是否可以以更好的方式编写.基本上,我想计算z = f(x, y)一个(x, y)meshgrid.
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])
Run Code Online (Sandbox Code Playgroud)
Len*_*bro 24
是啊.您在问题中提供的代码很好.
不要以为少数几行"好"或"酷".重要的是清晰度,可读性和可维护性.其他人应该能够理解你的代码(你应该在12个月内理解它,当你需要找到一个bug).
许多程序员,特别是年轻人,需要"聪明"的解决方案.他们不是.这就是python社区的优点.我们比其他人更少受到这种错误的折磨.
你可以做点什么
z = [[f(item_a, item_b) for item_b in b] for item_a in a]
Run Code Online (Sandbox Code Playgroud)