如何在python-3项目中使用python-2包?

时间:2015-11-24 05:19:35

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

如何在python-3项目中使用python-2包?

我有一个python-3项目,但我需要一些在python-2中编写的软件包。

我不想重写这些python-2软件包。

2 个答案:

答案 0 :(得分:1)

你做不到。您在py3代码库中导入的任何模块都需要兼容py3。如果你不能让上游项目为你做,你必须自己做。正如评论中所提到的,2to3实用程序应该可以帮助您。

答案 1 :(得分:0)

许多先前的问题涉及在Python 3项目中使用Python 2模块。这是most complete explanation。它也相反,并建议以下替代方案:

  1. 使用subprocess模块发送请求并通过CLI获取响应。到目前为止,最直接的方式是进行交叉引用。 python-fire可以快速将CLI添加到Python 3库中。您将有一个合理的API来从Python 2项目调用。
  2. 3to2。该实用程序将Python 3代码转换为Python 2.目前还不清楚它如何处理具有依赖性和仅支持Python 3的复杂Python 3项目。
  3. six__future__。似乎这两个模块都用于编写与Python 2-3兼容的代码,而不是在Python 2项目中使用Python 3库。
相关问题