Mac上提升python运算速度-PyPy初体验
作者:文文
公众号:小小挖掘机(专门分享数据挖掘以及学习经验)
最近跟着导师参加了天池的厦门航空算法大赛,比赛的整体思路就是通过建立整数规划模型来求解可行解,得到航班调度的安排。参加比赛遇到的一大问题是模型中的决策变量太多,难以快速的求解出答案,所以尝试了如何提升python的运行速度。本文主要介绍的方法就是通过pypy这一工具来提升python运行速度。
1、什么是PyPy
PyPy是用Python实现的Python解释器。更为具体的概念可以参考百度百科。
2、Mac上安装PyPy
这里我们使用brew来安装PyPy。首先我们可以看一下有哪些可以安装的PyPy版本,使用如下命令:
brew search pypy
可以看到有两个PyPy版本,很容易从名字就看出来一个是针对python2的,一个是针对python3的,我两个都装了,所以显示了两个对勾。
这里建议大家安装python2版本的,因为装了python3版本的之后发现pandas安装总是报错。
使用如下命令安装PyPy
brew install pypy
等待安装完成即可。
3、PyPy使用pip安装第三方库
PyPy是独立于系统自身的python环境的,所以它不能使用系统自身已经安装的python第三方库,所以使用PyPy运行python程序时,如果涉及到第三方库,会报找不到模块的错误,所以需要给PyPy安装相应的第三方库,方法如下:
首先需要下载get-pip.py文件:https://github.com/anpengapple/pypy_get_pip
下载完成后,使用如下命令进行安装:
pypy get-pip.py
执行完之后,我们就可以使用pypy安装我们需要的第三方库了,比如我们想要安装xlwt:
pypy -m pip install xlwt
如果不加pypy -m 则默认安装到你的python环境下。
效果如下图:
4、PyPy性能测试
写一个简单的小程序来测试PyPy的运行性能:
import datetime
time1 = datetime.datetime.now()
print (time1)for i in range(1000): for j in range(1000): for t in range(1000):
pass
time2 = datetime.datetime.now()
print (time2)
print (time2-time1)
测试结果如下:
性能对比
可以发现PyPy的运行性能简直完爆使用默认的python环境的性能。
关注公众号,“Python爱好者社区”,回复“爬虫”即可获取崔老师爬虫免费学习视频。
为大家提供与Python相关的最新技术和资讯。
长按指纹 > 识别图中二维码 > 添加关注