【问题标题】:Can I use Python 2 packages in a virtual environment that runs on Python 3?我可以在 Python 3 上运行的虚拟环境中使用 Python 2 包吗?
【发布时间】:2014-11-09 17:48:30
【问题描述】:

我在 virtualenv 中部署了一个 Django 应用程序,它使用 Python 3 作为解释器。在我需要为 Python 2 编写的 pip 包之前,这非常有效。有没有在 Python 3 环境中使用 Python 2 包的好方法?我知道有一个interoperability library 可以提供帮助,但我不知道从哪里开始。

【问题讨论】:

  • 我想我的问题是到底是什么失败了?是在您尝试导入 pkg 时还是在您编写自己的 python 代码时?如果您正在编写自己的代码,则可以像您提到的那样使用 six 包。但是,如果您尝试使用其他人编写的包,那么您可能需要考虑检查该包是否具有 python3 兼容性,或者只是转移到 python2 以完成您的项目
  • 我想尝试使用 MongoDB,所以我尝试安装 django-mongodb-enginepip。除其他外,我在print 语句上遇到语法错误,这就是我发现这是 Python 2 代码的原因。据我所知,他们haven't made any progress 将他们的代码移植到 Python 3。

标签: python python-2.7 python-3.x pip virtualenv


【解决方案1】:

不,可能不是...我认为这个网站应该可以帮助您:https://wiki.python.org/moin/Python2orPython3 如果你真的想使用它,你可以移植这个包。

【讨论】:

    最近更新 更多