查看单个帖子
旧 2019-11-28, 17:20   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
默认 python vs matlab:在2个嵌套的for循环中分配值的性能很差

我真的很感谢有关python脚本的一些帮助。我在matlab中开发了一个代码,然后在python中进行了翻译。

Matlab中的这段代码需要少于2秒的时间,n = 200

x = linspace(xmin,xmax,n); y = linspace(ymin,ymax,n); for i = 1:n for j = 1:n z(i,j) = my_function(x(i),y(j)); end end 相反,在python3中超过1分钟:

x = np.linspace(xmin,xmax,n) y = np.linspace(ymin,ymax,n) for i in range(0,n): for j in range(0,n): z[i][j] = my_function(x[i],y[j]) my_function是一个简单的函数,需要2点作为输入,并经过几次检查后返回0或1。

关于如何提高python代码性能的任何建议?

提前致谢。



更多&回答...
poster 当前离线   回复时引用此帖