1

我有用 python 2.6 编写的代码,它使用(取决于)也用 python 2.6 编写的其他第三方库。这些第三方库很旧,不会在不久的将来或在某些情况下不会被翻译成 python 3.x。我的问题是是否可以编写可以从 2.6 代码调用代码(函数)的 3.x 代码。

例如:编写3.x python代码,可以调用2.6代码,然后调用第三方库,如果有返回3.x代码,则返回结果。

如果您有任何示例或知道这是否可能,或者可以为我指明正确的方向,那就太好了。

感谢您的时间

4

2 回答 2

0

您可以使用 IPC 框架透明地包装所有调用。你可以尝试使用 Pyro4,但我不确定这是否可行。

于 2013-06-03T21:25:06.753 回答
0

你有几个选择:

  1. 自己移植库 - 这并不像看起来那么难,尽管并不理想。
  2. 使用某种 IPC 在 python 3.x 和 2.x 安装之间进行接口。
  3. 坚持使用 python 2.x

由于您确定的原因,我推荐选项 3 - 看起来很多库仅适用于 2.x。坦率地说,没有任何令人信服的理由来切换到 3.x。

更新:您有第四个选择,即使用 PyPi 之类的东西来创建一个可以同时运行两种语言的 python 可执行文件。如果这些语言最终以一组基本库之间的分裂而告终,那么有人可能会这样做。

于 2013-06-03T21:08:40.420 回答