General-purpose, high-level programming language supporting multiple programming paradigms.
If a Python package you need is not packaged for Fedora,
or if you need it in an isolated environment,
you can use pip
to install it from the Python Package Index (PyPI).
Note that software on PyPI is not part of Fedora, and has different standards of quality, security and licensing: essentially, anyone can upload code there.
Only install software you trust, and always double-check install
commands for typos in package names.
You can either install such modules to a virtual environment, or to your home directory with the --user
user switch. See below for both options.
Installing modules with pip to system directories is not recommended, as it can override system libraries and lead to an unstable system.
The best practise is using pip in the virtual environment. It will keep all modules for one project at one place and it will not break your local system. Another advantage is that you can have more versions of the same module in different virtual environments.
Let’s create a virtual environment called project_venv
with the main Python 3 version in Fedora.
If you need to use another version of Python or a different interpreter such as PyPy, see the Multiple Interpreters section.
$ python3 -m venv project_venv
If you want to work in the virtual environment, you have to activate it.
$ source project_venv/bin/activate
When the virtual environment is activated (you can see it’s name in brackets at the beginning of your prompt), you can install modules with pip.
For example, if your project needs the requests
library, run:
(project_venv) $ python -m pip install requests
When you finish your work, just deactivate the virtual environment.
(project_venv) $ deactivate
The environment is a directory.
If you no longer need it, deactivate it and delete it with rm -rv project_venv
.
Sometimes, you don’t want to use a virtual environment.
For example, you’re installing a tool you will use in multiple projects, but the tool is not available in Fedora repositories.
In such cases, install with the --user
option.
For example, to install a Python implementation of cowsay
(rather than the original Perl one available in Fedora), run:
$ python -m pip install --user cowsay
If you’re feeling lucky or impatient, you can use the shorter command pip install cowsay
, without the python -m
.
Usually, this will install using the correct version of Python.