numpy的好处

python是很慢的,因为python在执行代码的时候会执行很多复杂的check功能,比如

b=1; a=b/0.5

 

这个运算看起来很简单,但是在计算机的内部。b要先从一个整数integer转化成一个浮点数float,才能执行a的赋值

numpy,他能把简单好用的python和高性能的c语言合并在一起,当调用numpy功能的时候,其实调用了很多的c语言而不是纯的python


其实numpy就是c的逻辑,创建存储容器'array'的时候在c上是寻找到一连串区域来存放,但是python存放的时候则不是连续的区域,这使得
python在索引这个容器里的数据时不是那么的有效率,numpy只需要在这块固定的连续区域前后来回走动就能拿到数据了

在运用numpy的时候我们通常不是一个一维的array来存放数据,而是用二维和三维的快来存放,因为numpy的快速矩阵相乘的运算,能将乘法分配
到计算机中的多个核,让运算并行,从而实现多线程/多进程,这种并行的计算大大加快了运算的速度

未完待续

出处:https://morvanzhou.github.io/tutorials/data-manipulation/np-pd/4-1-speed-up-numpy/


posted @ 2018-09-03 15:44  BothSavage  阅读(2312)  评论(0编辑  收藏  举报