是否可以在Jupyter笔记本中运行pypy内核?

时间:2015-11-22 01:17:56

标签: python pypy jupyter

我一直想知道是否可以在Jupyter笔记本中运行PyPy。我最近尝试在我的本地机器上安装PyPy,它运行得非常好 - 在用纯Python编写的基于代理的模拟中,速度提高了100倍。但是,我想念Jupyter笔记本中的交互性。是否有可能使IPython内核使用PyPy而不是CPython?

4 个答案:

答案 0 :(得分:7)

你可以用pypy安装Jupyter:

pypy-pip install jupyter

Mac OS X上存在问题。如果安装失败,则抱怨约gnureadline。试试这个:

pypy-pip install --no-deps jupyter

比开始:

pypy-ipython notebook

我的pypy-ipython看起来像这样:

#!/usr/local/bin/pypy

# -*- coding: utf-8 -*-
import re
import sys

from IPython import start_ipython

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(start_ipython())

在笔记本中:

In [1]: import sys

In [2]: sys.version

Out[2]:

'2.7.9 (295ee98b6928, May 31 2015, 07:28:49)\n[PyPy 2.6.0 with GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)]'

笔记本需要Python 2.7或3.3+。 PyPy for Python3.3应该很快就会推出。

我的pypy-pip此可执行文件/usr/local/bin//pypy-pip包含以下内容:

#!/usr/local/bin/pypy
# EASY-INSTALL-ENTRY-SCRIPT: 'pip','console_scripts','pip'
__requires__ = 'pip'
import sys
from pkg_resources import load_entry_point

if __name__ == '__main__':
    sys.exit(
        load_entry_point('pip', 'console_scripts', 'pip')()
    )

答案 1 :(得分:0)

假设您在jupyter的系统范围内/用户安装。您可以按照以下步骤操作:

pypy3 -m venv PyPy3
source PyPy3/bin/activate
pypy3 -m pip install ipykernel
ipython kernel install --user --name=PyPy3

现在退出虚拟环境并验证安装:

jupyter kernelspec list

打开Jupyter笔记本或实验室界面。

答案 2 :(得分:0)

第一个答案对我来说在Ubuntu上非常有效,但在Fedora上却不起作用-zeromq编译失败

以下根据第一个答案为我工作:

$ cd <portable-pypy-directory>
$ bin/python3 virtualenv/virtualenv.py <new-venv-dir>
$ <new-venv-dir>/bin/activate
$ pip install jupyter
$ ipython kernel install --user --name=PyPy3

答案 3 :(得分:0)

也许我们可以按照official doc

pypy3 -m pip install ipykernel
pypy3 -m ipykernel install --user