我有两个用两个不同文件编写的Python类。一个用Python 2.7编写,另一个用Python 3.2编写。一个类在另一个内部使用。
是否可以同时运行这两个类,以便一个类使用3.2解释器而另一个类将使用2.7解释器?
例如在终端中,我可以运行以下命令吗?
python3.2 firstClass.py
有什么建议吗?
由于
答案 0 :(得分:5)
我不相信他们可能在同一个过程中运行,也就是说你必须选择其中一个。 Python3和Python2字节码彼此不兼容,您可以通过尝试在Python3中运行Python2字节码来确认:
% cat > test.py
a = 1
% python2.6 -m compileall .
% python2.6 test.pyc
% python3.1 test.pyc
RuntimeError: Bad magic number in .pyc file
尝试更复杂的东西以确定。使用Python2编译test.py
,然后删除.py
文件以确保Python3不重新编译它。然后,尝试将.pyc
字节码导入Python3解释器。
% python2.6 -m compileall .
% rm test.py
% cat > test2.py
import test
print(test.a)
% python2.6 test2.py
1
% python3.1 test2.py
Traceback (most recent call last):
File "test2.py", line 1, in <module>
import test
ImportError: Bad magic number in test.pyc
答案 1 :(得分:0)
很容易1-2-3。希望您的系统中安装了Python 2.7和Python 3.X.X.所以在你的命令提示符下输入 1)py -2 //用于用Python 2编写的程序 2)py -3 //用于Python 3中的程序
由于