【问题标题】:How to install PyPy in anaconda如何在 anaconda 中安装 PyPy
【发布时间】:2015-05-17 09:28:39
【问题描述】:

我有一台 Linux 64 位机器。如何在我的 anaconda 环境中安装 PyPy。我试过 conda install pypy。它说没有可用的软件包。 pip install pypy 也返回类似的消息。安装 PyPy 的唯一方法是从网站下载 tar.gz 文件吗?安装后,如何配置我的 Anaconda 环境,以便在需要时能够从 PyPy 切换到其他 Python 实现?

【问题讨论】:

  • 我认为这是不可能的。请记住,pypy 不仅仅是一些扩展 python 的包,而是纯 python 中 python 解释器的全新实现。 pypy 不(还?)完全支持科学包堆栈根部的许多包(例如numpyscipy)。所以 AFAICT,pypy 在科学 python 社区中没有被广泛采用。我认为在不久的将来不会有解决方案。
  • @cel 请注意,conda 是一个与 python 无关的包管理器(例如,您可以通过 conda 包安装 R,对于 pypy 也应该同样可以这样做。但是必须有人首先编写一个它的配方,构建它并使其可用)

标签: python installation pip anaconda pypy


【解决方案1】:

截至 2021 年,Pypy 3.7 支持 Python 3.7 进入 conda 环境 类型> conda install -c conda-forge pypy3.7(确保您使用的是 py 3.7)

(pypy37) C:\Users\UserName>conda install -c conda-forge pypy3.7
Collecting package metadata (current_repodata.json): done
Solving environment: done


==> WARNING: A newer version of conda exists. <==
  current version: 4.10.1
  latest version: 4.10.3

Please update conda by running

    $ conda update -n base -c defaults conda



## Package Plan ##

  environment location: C:\Users\Dios Dole\.conda\envs\pypy37

  added / updated specs:
    - pypy3.7


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    bzip2-1.0.8                |       h8ffe710_4         149 KB  conda-forge
    ca-certificates-2021.5.30  |       h5b45459_0         171 KB  conda-forge
    certifi-2021.5.30          |   py37h4c0cbd9_0         142 KB  conda-forge
    expat-2.4.1                |       h39d44d4_0         279 KB  conda-forge
    libffi-3.3                 |       h0e60522_2          37 KB  conda-forge
    openssl-1.1.1k             |       h8ffe710_0         5.7 MB  conda-forge
    pypy3.7-7.3.5              |       hb504520_5        31.1 MB  conda-forge
    python-3.7.10              |        1_73_pypy           5 KB  conda-forge
    python_abi-3.7             |    2_pypy37_pp73           4 KB  conda-forge
    tk-8.6.10                  |       h8ffe710_1         3.2 MB  conda-forge
    xz-5.2.5                   |       h62dcd97_1         211 KB  conda-forge
    zlib-1.2.11                |    h62dcd97_1010         126 KB  conda-forge
    ------------------------------------------------------------
                                           Total:        41.2 MB

The following NEW packages will be INSTALLED:

  bzip2              conda-forge/win-64::bzip2-1.0.8-h8ffe710_4
  expat              conda-forge/win-64::expat-2.4.1-h39d44d4_0
  libffi             conda-forge/win-64::libffi-3.3-h0e60522_2
  pypy3.7            conda-forge/win-64::pypy3.7-7.3.5-hb504520_5
  python_abi         conda-forge/win-64::python_abi-3.7-2_pypy37_pp73
  tk                 conda-forge/win-64::tk-8.6.10-h8ffe710_1
  xz                 conda-forge/win-64::xz-5.2.5-h62dcd97_1
  zlib               conda-forge/win-64::zlib-1.2.11-h62dcd97_1010

The following packages will be UPDATED:

  python                pkgs/main::python-3.7.10-h6244533_0 --> conda-forge::python-3.7.10-1_73_pypy

The following packages will be SUPERSEDED by a higher-priority channel:

  ca-certificates    pkgs/main::ca-certificates-2021.7.5-h~ --> conda-forge::ca-certificates-2021.5.30-h5b45459_0
  certifi            pkgs/main::certifi-2021.5.30-py37haa9~ --> conda-forge::certifi-2021.5.30-py37h4c0cbd9_0
  openssl              pkgs/main::openssl-1.1.1k-h2bbff1b_0 --> conda-forge::openssl-1.1.1k-h8ffe710_0


Proceed ([y]/n)? y


Downloading and Extracting Packages
ca-certificates-2021 | 171 KB    | ####################################################################################################################################################################### | 100%
python_abi-3.7       | 4 KB      | ####################################################################################################################################################################### | 100%
python-3.7.10        | 5 KB      | ####################################################################################################################################################################### | 100%
expat-2.4.1          | 279 KB    | ####################################################################################################################################################################### | 100%
certifi-2021.5.30    | 142 KB    | ####################################################################################################################################################################### | 100%
bzip2-1.0.8          | 149 KB    | ####################################################################################################################################################################### | 100%
libffi-3.3           | 37 KB     | ####################################################################################################################################################################### | 100%
tk-8.6.10            | 3.2 MB    | ####################################################################################################################################################################### | 100%
xz-5.2.5             | 211 KB    | ####################################################################################################################################################################### | 100%
zlib-1.2.11          | 126 KB    | ####################################################################################################################################################################### | 100%
pypy3.7-7.3.5        | 31.1 MB   | ####################################################################################################################################################################### | 100%
openssl-1.1.1k       | 5.7 MB    | ####################################################################################################################################################################### | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

之后检查 类型> pypy --version

(pypy37) C:\Users\UserName>pypy --version
Python 3.7.10 (77787b8f4c49115346d1e9cbaf48734137417738, Jul 18 2021, 08:38:15)
[PyPy 7.3.5 with MSC v.1916 64 bit (AMD64)]

【讨论】:

    【解决方案2】:

    conda-forge 现在支持 PyPy3.6 作为 conda 环境中的 python 解释器(见官方blog post):

    conda config --set channel_priority strict
    conda create -n pypy pypy
    conda activate pypy
    

    然后像常规的 python 可执行文件一样使用它(注意这是一个不同的 Python 解释器,而不是一个包)

    pypy3 -c "import sys; print(sys.version)"

    它适用于 Linux 和 OSX。

    【讨论】:

    • 在这种情况下如何安装包,例如 pip?
    • @lorenzo pypy3 -m pip install [包]
    • 看起来没有适用于 windows 的构建。
    • @Yeti 这仅在第一次执行 pypy3 -m ensurepip 后才有效
    【解决方案3】:

    除了 Ohad 的回答,先创建一个新环境来容纳 pypy。 PyPy 不会为我的基本配置安装,但这样做:

    conda create -n <newenviromnentname>
    

    进入环境

    conda activate <newenviromnentname>
    

    将pypy安装到环境中

    conda install -c conda-forge pypy3.6 
    

    然后继续安装您需要的其余可用软件包。

    【讨论】:

      【解决方案4】:

      注意:conda-pypy 已存档,此答案已过时,并且 conda-forge 正在生成 PyPy 包。您应该改用它。

      Riccardo Vianello 在 GitHub 上维护了另一种方法:

      https://github.com/rvianello/conda-pypy

      它基本上涉及使用他的 conda 频道而不是默认频道来安装必要的软件包。提供了一些基本的。

      【讨论】:

        【解决方案5】:

        Puppy 的版本支持可以在这里找到:http://pypy.org/download.html

        它是特定于分布式的,所以如果您没有支持的地区,您可以。尝试使用构建选项。

        如果没有关于您的 Linux 和 python 版本的更多信息,很难添加更多信息。

        【讨论】:

        • 我目前正在使用 Python 2.7.9 |Anaconda 2.1.0(64 位)操作系统:Linux 3.5.0-54-generic x86_64 目前这是我尝试运行时运行的 Python任何 Python 程序。我希望它运行 PyPy 而不是这个。
        猜你喜欢
        • 2015-08-29
        • 1970-01-01
        • 1970-01-01
        • 2014-01-11
        • 2021-07-25
        • 1970-01-01
        • 2014-03-05
        • 2016-09-05
        • 2023-04-02
        相关资源
        最近更新 更多