我正在寻找一种方法,让多个Python程序在同一台Windows机器上共存。在
问题是这样的:假设程序A需要Python2.5,B需要2.6,C需要3,并且每个程序都需要自己版本的Qt、Wx或其他任何模块。在
尝试在同一台机器上安装所有这些依赖项会破坏某些功能,例如,您可以并行安装不同版本的Python,但其中只有一个版本可以具有.py文件关联,因此如果您将其交给Python 2.5,那么B和C将无法工作,等等
理想的情况是,如果程序A可以与它自己的Python解释器Qt/Wx/MySQL driver/whatever一起生活在C:\A中,并且永远不接触该目录之外的任何东西,B和C也是如此
除了走完整的虚拟盒子路线之外,还有什么方法可以实现这一点吗?在
编辑:我尝试过批处理文件解决方案,但它不起作用。也就是说,它可以在简单的测试脚本上工作,但是如果OpenRPG所需的Python版本不拥有文件关联,那么OpenRPG在加载过程中的某个时候会失败。在
一种解决方案是编写一个批处理文件,为给定的应用程序调用正确的解释器。这样,您就可以在单独的文件夹中安装其他解释器。在
可能不完美,但它很管用。在
使用批处理文件运行脚本,在记事本中写入例如:
把它保存为跑步蝙蝠(或者别的什么。蝙蝠)。它将在c:\python26中与解释器一起运行\python.exe在空白后指定的文件。在
VirtualEnv。在
见前面的答案here。在
另一个您应该看看的工具是
pip
,它非常适合将库的特定版本安装到虚拟环境中。例如,如果您需要为一个应用程序运行pythonv2.x中某个库的v1.0,而在pythonv2.x中运行同一个库的1.1,那么您将需要virtualenv plus一种在该环境中安装特定版本的方法。Virtualenv+pip是您的最佳选择。在相关问题 更多 >
编程相关推荐