Mac上提升python运算速度-PyPy初体验

最近跟着导师参加了天池的厦门航空算法大赛,比赛的整体思路就是通过建立整数规划模型来求解可行解,得到航班调度的安排。参加比赛遇到的一大问题是模型中的决策变量太多,难以快速的求解出答案,所以尝试了如何提升python的运行速度。本文主要介绍的方法就是通过pypy这一工具来提升python运行速度。

1、什么是PyPy

PyPy是用Python实现的Python解释器。更为具体的概念可以参考百度百科。

2、Mac上安装PyPy

这里我们使用brew来安装PyPy。首先我们可以看一下有哪些可以安装的PyPy版本,使用如下命令:

brew search pypy
查看可安装brew版本

可以看到有两个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环境下。
效果如下图:


Mac上提升python运算速度-PyPy初体验_第1张图片
pip

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)

测试结果如下:

Mac上提升python运算速度-PyPy初体验_第2张图片
性能对比

可以发现PyPy的运行性能简直完爆使用默认的python环境的性能。

如果你喜欢我写的文章,可以帮忙给小编点个赞或者加个关注,我一定会互粉的!
如果大家对Python感兴趣,欢迎跟小编进行交流,小编微信为sxw2251,加我要写好备注哟!:


Mac上提升python运算速度-PyPy初体验_第3张图片
我的微信

你可能感兴趣的:(Mac上提升python运算速度-PyPy初体验)