如何在一台机器上使用python模块的多个版本

如何在一台机器上使用python模块的多个版本,python,version-control,module,multiple-versions,Python,Version Control,Module,Multiple Versions,在一台机器上,如何使用一个python模块的两个版本 a同时在同一台机器上 b在单个用户下,以及 不幸的是,如果不安装外部程序,就无法在Windows工作计算机上可靠地安装外部程序 d在升级$git pull newversion时使用相同的名称以避免麻烦 代码项目的生产版本一直在运行。在同一台机器上,代码的测试/开发版本也定期运行。他们如何使用给定模块的特定版本 A版: #!/usr/bin/python34 #C:\\myproject\\testversion\\bin\\myprogra

在一台机器上,如何使用一个python模块的两个版本

a同时在同一台机器上

b在单个用户下,以及


不幸的是,如果不安装外部程序,就无法在Windows工作计算机上可靠地安装外部程序

d在升级$git pull newversion时使用相同的名称以避免麻烦

代码项目的生产版本一直在运行。在同一台机器上,代码的测试/开发版本也定期运行。他们如何使用给定模块的特定版本

A版:

#!/usr/bin/python34
#C:\\myproject\\testversion\\bin\\myprogram.py
import mymodule  ## this version in C:\\myproject\\testversion\\lib\\python
mymodule.do_stuff() # do_stuff version A
B版:

#!/usr/bin/python34
#C:\\myproject\\productionversion\\bin\\myprogram.py
import mymodule ## this version is in C:\\myproject\\productionversion\\lib\\python
mymodule.do_stuff() ## do_stuff version B
如果我的理解是正确的,严格使用PythonPath环境变量将为两个版本选择相同的mymodule do

在阅读了不同的python模块和之后,我觉得适当地组织一个包而不仅仅是一个模块可能是合适的,但我不太清楚从中可以得到什么样的最佳实践


还有,既然我认为标准最好?许多项目(如deb软件包等)的程序是将脚本放在不同于模块(如bin vs.lib)的文件夹中,对于上述情况,仅在同一目录中查找import关键字似乎是不够的

它们可以在不同的虚拟环境中运行吗?使用shebang来表示Python版本。无法在Windows工作计算机上可靠地安装外部内容-您可能应该退出。更严肃的一点是,并不是说我不想退出,看看相对进口。另外,如果您从\myproject\test | productionversion\运行脚本,您应该能够从lib.python导入myprogram.py文件中的mymodule,并且它应该可以工作。您听说过python Launcher for Windows吗?您能更具体地介绍不同的虚拟环境吗?对不起,我不熟悉。python版本相同,只是模块版本不同。我没听说过Python启动器。