16.13.2 虚拟环境的内容
每个虚拟环境都包含一个bin目录,本地解释器和所有可执行的脚本都安装在这里;另外包含一个include目录,其中包括构建C扩展包的相关文件;还有一个lib目录,有一个单独的site_packages位置来安装包。
默认的bin目录中对应多种UNIX shell版本分布包含一个“激活”脚本。可以用这些脚本在shell的搜索路径上安装虚拟环境,从而确保shell选择这个环境中安装的程序。尽管并不是必须激活一个环境才能使用其中安装的程序,但这种技术可能更方便。
在支持虚拟环境的平台上,会使用符号链接而不是复制类似Python解释器的可执行文件。在这种环境中,pip被安装为一个本地副本,不过解释器是一个符号链接。最后,环境还包含一个pyvenv.cfg文件,其中的设置描述了如何配置这个环境,以及会有怎样的作为。home变量指示Python解释器的位置,并且将在这里运行venv以创建环境。include-system-site-packages是一个布尔变量,指示包是在虚拟环境之外安装、在系统
级安装还是在虚拟环境内部可见。version是创建这个环境所用的Python版本。
结合pip和setuptools等工具时,虚拟环境会更有用,可以用这些工具来安装其他包,所以pyvenv默认地安装了这些工具。要创建一个不带这些工具的基本环境,可以在命令行传入–without-pip。