Ken*_*ows 7 python subprocess python-3.x
我正在写一个Django Web应用程序.截至目前,Django不支持Python 3.出于我的Web应用程序的目的,并且没有深入细节,我基本上需要使用一些仅支持Python 3的库.只需说经过深入研究后没有找到2.x替代方案.
所以我的问题是:我该怎么做呢?
我的服务器上安装了Python 2和3,我编写了Python 3代码并等待调用.我正在考虑简单地使用该subprocess模块,从命令行有效地调用Python 3,但问题是,这是最好的方法还是我可以在这里使用最佳实践?使用subprocess对我来说似乎非常hackish.不要误会我的意思,我很讨厌hackish,我只是想确保没有其他我应该做的事情.
由于Python 3和Python 2解释器是完全独立的可执行文件,并且在您的系统上安装了单独的库,因此使用subprocess从另一个中调用一个库是最佳实践.这根本不是黑客攻击.有许多方法可以在它们之间传递数据,但是这两个解释器应该作为单独的进程运行.
也就是说,您可能需要记住与启动解释器进程相关的启动时间.这又回到了如何在两个进程之间传递数据.如果你的Python 2代码经常调用Python 3例程,你可能需要将Python 3程序构建为守护进程.但你仍然会用subprocess它来启动它.