如何在不安装的情况下测试我的Python模块

20 投票
3 回答
14965 浏览
提问于 2025-04-16 15:48

我正在重新设计和改进我的Python量子化学包(pyquante)。我对现有版本不满意的一点是,我必须先安装这个包才能运行测试套件。也就是说,测试套件里面有像 from PyQuante import SCF 这样的语句,而这个PyQuante可能指的是已经安装的版本,也可能是本地的版本。

我知道有虚拟环境(virtualenv),并且意识到这对我来说是一个选择。但我在想,还有没有其他合适的方法。在过去,我曾经修改过 sys.path 来解决类似的问题,但被更厉害的Python程序员告知我不应该这样做。

有没有人能给我一些建议,告诉我该怎么做?我的意思是,我想在不安装的情况下测试当前版本的代码。

提前感谢任何能理解我说的这些并提供建议的人!

3 个回答

1

在生产环境中频繁修改 sys.path 可能不是个好主意。为了测试而修改它通常是可以的。

如果你不想直接改 sys 里的这个变量,可以使用一个叫 PYTHONPATH 的环境变量,这是一种干净且有文档说明的方法。

8

我真心建议你使用virtualenv,它就是为了这个目的而设计的。使用它几乎没有额外的负担,如果你搞砸了,只需要删除那个文件夹就行。我相信随着你技能的提升,事情不会像现在这样简单。把这当作一个学习的机会吧。

30

为你的东西创建一个合适的包,并使用

python setup.py develop

将其变成一个合适的开发包。

可以参考:

撰写回答