Installation ============ Installing Python can be easy. The first step is to download the latest version from `www.python.org/downloads `_. The tutorial is based on Python 3.13.0, but if you have Python 3.10 or newer installed, this should not be a problem. .. tab:: Linux Python is already included in the `Linux Standard Base `_. However, most Linux distributions do not want to have anything to do with the language-specific package manager, but want to manage everything via ``rpm``/``deb`` or similar. package managers :abbr:`etc (et cetera)`. They also don’t want their packages to be used for anything other than system purposes. You should therefore install your own Python. Under Ubuntu, for example, you can do this with: .. code-block:: console $ wget https://www.python.org/ftp/python/3.12.4/Python-3.13.0.tgz $ tar xf Python-3.13.0.tgz $ cd Python-3.13.0 $ ./configure --enable-optimizations $ sudo make altinstall .. warning:: One disadvantage is that you have to return to the website regularly to check for security updates as there is no integrated auto-updater. .. tab:: macOS You can obtain Python directly from https://www.python.org/downloads/macos/. The ``universal2`` installers also run on Intel-based environments. One disadvantage is that you have to return to the website regularly to check for security updates, as there is no integrated auto-updater. Alternatively, you can install `MOPUp `_ with ``python -m pip install MOPUp`` and then regularly call ``mopup`` to get the latest version of your Python installation. If older Python versions are required, `python-build-standalone `_ can be used. .. tab:: Windows Python can be installed for most Windows versions after Windows 7 with the Python installer in three steps: #. Download the latest Python Releases for Windows installer, for example `Windows installer (64-bit) `_. #. Start the installation programme. If you have the necessary authorisations, install Python with the option *Install launcher for all users*. This should install Python in :file:`C:\\Program Files\\Python313-64`. In addition, *Add Python 3.13 to PATH* should be activated so that this path to the Python installation is also entered in the list of ``PATH`` environment variables. #. Finally, you can now check the installation by entering the following in the command prompt: .. code-block:: ps1con C:\> python -V Python 3.13.0 .. warning:: One disadvantage is that you have to return to the website regularly to check for security updates, as there is no integrated auto-updater. .. _various-python-versions: If different Python versions are required, for example to test libraries with :doc:`test/tox`, I use :term:`uv`. This allows not only older CPython versions to be installed but also `PyPy `_ or free-threaded Python 3.13 with ``uv python install pypy@3.12`` or ``uv python install --python-preference only-managed 3.13t``. .. tip:: `direnv `_ allows you to set environment variables depending on the directory. This allows you to install environment variables from `The twelve-factor apps `_ and project-specific environments as well as providing secrets for deployment.