首页 > 编程语言 > 详细

python笔记(优化相关)

时间:2018-08-24 12:36:05      阅读:113      评论:0      收藏:0      [点我收藏+]

1. 列表推导: https://www.cnblogs.com/liu-shuai/p/6098227.html

列表推导的速度比普通循环快一倍左右

 

2. 尽可能多地使用内置方法: https://blog.csdn.net/pipisorry/article/details/39235753

 

3. 时间计量:

tib=time.clock()
...
tie=time.clock()
print("time = " + str(1000*(tie-tib)) + "ms")
 
4. 避免对长列表使用append, 改用np.empty然后逐个赋值
 
5. 使用numpy内部函数处理np数组是速度最快的方式: https://blog.csdn.net/Yeuing/article/details/38018183
 
6. 能向量化计算的就不要迭代:
c1 = np.sum(np.array([(a[i]-u1)**2 for i in range(i)]) 列表推导,速度较慢
c1 = np.sum(np.vectorize(lambda x: (x-u1)**2)(a[0:i])) 伪向量化(vectorize并不能提升性能), 速度近似列表推导
c1 = np.sum(np.square(a[0:i] - u1)) 完全向量化, 用时减少一个数量级
 
 

python笔记(优化相关)

原文:https://www.cnblogs.com/lokvahkoor/p/9528745.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!