`pip`_ will install Python packages into a virtual environment
without needing to be told to do so explicitly.
+A virtual environment is (amongst other things):
+
+* Used to contain a specific Python interpreter and software libraries and
+ binaries which are needed to support a project (library or application). These
+ are by default isolated from software in other virtual environments and Python
+ interpreters and libraries installed in the operating system.
+
+* Contained in a directory, conventionally either named ``venv`` or ``.venv`` in
+ the project directory, or under a container directory for lots of virtual
+ environments, such as ``~/.virtualenvs``.
+
+* Not checked into source control systems such as Git.
+
+* Considered as disposable -- it should be simple to delete and recreate it from
+ scratch. You don't place any project code in the environment
+
+* Not considered as movable or copyable -- you just recreate the same
+ environment in the target location.
+
See :pep:`405` for more background on Python virtual environments.
.. seealso::