The [`venv` module](https://docs.python.org/3/library/venv.html "venv documentation") (shipped with Python 3.3 or later), and [`virtualenv`](http://python-guide-pt-br.readthedocs.io/en/latest/dev/virtualenvs/ "Introduction to virtualenv"), still widely in use, allow to install a project's dependencies not to the system-wide Python installation, but to a directory specific to that project.

One of the subdirectories of such a "virtual environment" contains a copy of the Python interpreter as well as "activate" and "deactivate" scripts - but this subdirectory is called `Scripts` on Windows, and `bin` on all other systems.

This is [somewhat](https://stackoverflow.com/questions/41687841/there-is-no-activate-when-i-am-trying-to-run-my-virtual-env) [surprising](https://stackoverflow.com/questions/13206990/virtualenv-env-not-creating-bin-directory-in-windows-7/13206997). **Why did they special-case Windows?**

(Neither [PEP 405](https://www.python.org/dev/peps/pep-0405/), nor the [venv](https://github.com/python/cpython/commit/7ded1f0f694f0f99252ea19eca18b74ea5e36cb0#diff-36a32c16a2d1ab045f47d7d4c407cf05R126) or virtualenv sources (or docs) contain any explanation - a [commit message in virtualenv](https://github.com/pypa/virtualenv/commit/993ba1316a83b760370f5a3872b3f5ef4dd904c1 "virtualenv commit introducing the difference") refers to "convention")