在一个应用程序中同时使用Python3和Python2.7

时间:2015-05-10 14:35:42

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

我遇到的问题是我必须使用两个脚本,一个只与Python2.7兼容,另一个只与Python3兼容。

所以我的问题是,是否有可能以任何方式这样做? (不重构代码) 我想过使用execfile()但它也只使用一个编译器。

1 个答案:

答案 0 :(得分:1)

根据您的说法,这些脚本是独立的 - 您不能在2.7和3之间共享变量。如何在它们之间进行通信?

你可以:

  • 使用Python3提供的2to3脚本将2.7脚本转换为3。所以你不必手动重构。这通常很有效。

  • 运行一个脚本,并从那里调用另一个脚本调用,例如,subprocess使用正确的解释器执行另一个脚本。类似的东西(来自2.7脚本):

    subprocess.call(['python3','other_script.py'])//或 result = subprocess.check_output(['python3','other_script.py'])//如果你需要脚本的输出

  • 写一个小bash(或.bat)并调用其中一个。