2

当我使用 . 创建虚拟环境时pyvenv,虚拟环境的python可执行文件符号链接到系统范围的安装,因此,我可以访问系统范围的标准库。为什么是这样?虚拟环境的全部意义不在于对冲模块中的 API 更改吗?标准库中的更改也不能破坏应用程序吗?

4

1 回答 1

2

“虚拟环境的全部意义不在于对冲模块中的 API 变化吗?” 你说的对。但是添加到 site-packages/dist-packages 的包中的 API 更改。不是标准库。虚拟环境的想法是让您建立一个分布式包库,您希望在特定环境下一起使用这些包,同时保持标准库的完整性。例如,如果您希望这些分布式包的不同版本(或组合)在不同的场景中运行,而不会与其他版本发生冲突,您可能会想要这样做。这样,每个虚拟环境都链接到同一个标准库,并且您可以确保在环境中执行的程序可以访问您决定保留在该环境中的某个版本(甚至是一组)包。

于 2013-04-30T10:24:11.183 回答