繁体   English   中英

是否可以从Python中的3.x代码调用2.x代码

[英]Is it possible to call 2.x code from 3.x code in Python

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

例如:编写3.x python代码,该代码可以调用2.6代码,而后者又调用第三方库,并在返回3.x代码时返回结果。

如果您有任何示例,或者知道是否可行,或者可以为我指明正确的方向,那将是非常不错的。

感谢您的时间

您有两种选择:

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

出于您确定的原因,我建议您选择选项3-似乎很多库仅适用于2.x。 坦白地说,没有任何令人信服的理由切换到3.x。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM