Python3.3以上的版本通过venv模块原生支持虚拟环境,可以代替Python之前的virtualenv。
该venv模块提供了创建轻量级“虚拟环境”,提供与系统Python的隔离支持。每一个虚拟环境都有其自己的Python二进制(允许有不同的Python版本创作环境),并且可以拥有自己独立的一套Python包。
需要注意的是,在Python3.3中使用”venv”命令创建的环境不包含”pip”,你需要进行手动安装。在Python3.4中改进了这一个缺陷。
在当前目录创建虚拟环境:
$ python -m venv .
下面是”venv”的详细使用参数:
usage: venv [-h] [--system-site-packages] [--symlinks] [--clear]
[--upgrade] [--without-pip] ENV_DIR [ENV_DIR ...]
Creates virtual Python environments in one or more target directories.
positional arguments:
ENV_DIR A directory to create the environment in.
optional arguments:
-h, --help show this help message and exit
--system-site-packages Give access to the global site-packages dir to the
virtual environment.
--symlinks Try to use symlinks rather than copies, when symlinks
are not the default for the platform.
--copies Try to use copies rather than symlinks, even when
symlinks are the default for the platform.
--clear Delete the environment directory if it already exists.
If not specified and the directory exists, an error is
raised.
--upgrade Upgrade the environment directory to use this version
of Python, assuming Python has been upgraded in-place.
--without-pip Skips installing or upgrading pip in the virtual
environment (pip is bootstrapped by default)
在Posix标准平台下:
$ source /bin/activate
在Windows cmd下:
C:> /Scripts/activate.bat
在Windows PowerShell下:
PS C:> /Scripts/Activate.ps1
激活虚拟环境后,在命令行会提示当前虚拟环境的名称,就表示激活成功了。
在当前虚拟环境中安装numpy:
$ pip install numpy
当前安装的numpy包与系统中的不会冲突,下面进行测试:
$ python
>>> import numpy
>>> print(numpy)
如果输出了numpy的包路径就表示一切正常。
https://docs.python.org/3/library/venv.html