python installation

Identification

Infoforall

Installer Python sur Linux


Cette page vous montre d'abord comment installer Python et son IDLE "à la main" sur le système Linux.

La partie 4 traite d'une autre façon d'utiliser Python à travers un environnement de développement nommé Thonny, léger mais efficace. Cela vous permettra d'obtenir une version totalement indépendante des paquets installés sur votre système.

Si vous êtes ici par curiosité plus qu'autre chose, vous pouvez passer directement à Thonny.

1 - Téléchagement et installation de Python 3

Je pars du principe que vous avez la distribution très connue Ubuntu. Si vous en avez installé une autre, vous saurez installer Python en adaptant les codes.

Première chose : une version de Python2 est déjà certainement présente sur votre système. Pour le vérifier, il faut ouvrir un terminal (pour le trouver sous Ubuntu, ouvrez Afficher les applications et cliquez sur l'icone noire représentant un terminal).

Une fois dans le terminal, tapez les commandes en gras :

rv@monordi:~$ python Python 2.7.15rc1 (default, Nov 12 2018, 14:31:15) [GCC 7.3.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> exit()

Comme vous le voyez, Python 2 est déjà installé sur mon système et c'est la version activée lorsqu'on tape python. Ne cherchez pas à modifier artificiellement cela, quelques programmes utilisent justement python2.

Nous allons simplement installer Python 3 en plus. Il faudra l'activer en tapant python3.

Vérifiez que Python 3 ne soit pas déjà installé en tapant ceci :

rv@monordi:~$ python3 Python 3.6.7 (default, Oct 22 2018, 11:32:17) [GCC 8.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> exit()

Si python3 ne fonctionne pas, il suffit de l'installer en tapant ceci :

rv@monordi:~$ sudo apt install python3

Pour installer une version spécifique de python3, il suffit de l'installer en tapant ceci :

rv@monordi:~$ sudo apt install python3.7

Contrairement à Windows, vous n'aurez alors que python3, pas l'environnement de développement IDLE. Vous pouvez l'installer en tapant ceci :

rv@monordi:~$ sudo apt install idle

Pour démarrer IDLE, il faut suffira de taper idle dans le terminal. Si IDLE pour python2 était déjà installé, il faudrait soit désintaller cet IDLE et refaire une nouvelle installation, soit garder l'ancienne version et rajouter la version pour Python 3 :

rv@monordi:~$ sudo apt install idle3

Pour démarrer cette version d'IDLE, il faudra alors taper idle3 dans le terminal.

La partie suivante vous montrera comment installer des modules supplémentaires sur vos versions de Python mais ... il vaudrait mieux uniquement la regarder et installer proprement Python 3 dans un environnement virtuel de façon à ne pas créer d'instabilité. On explique la méthode dans la partie 6.

Python 3 ou Python 2 ?

Attention, Python 2 existe toujours car de nombreux programmes ont été créés avec cette version et nécessitent l'interpréteur Python 2 pour fonctionner. Comme ils tournent bien, ils n'ont pas nécessairement été modifiés pour tourner sous un interpréteur Python 3. Les codes Python 2 ne sont pas totalement compatibles avec Python 3. Installez donc bien la version 3.

Si vous voulez faire des premiers tests, voyez le tuto suivant : utiliser Python.

2 - Rajouter des modules

Python et son interpréteur est installé avec quelques bibliothèques officielles.

Il existe néanmoins une grande communauté et plusieurs bibliothèques très utiles mais non distribuées directement. Il va falloir les installer manuellement.

Je propose ici une technique qui devrait marcher. Si ça ne fonctionne pas, dirigez-vous le troisième tuto. Il vous donnera assez d'informations pour vous en sortir, je l'espère.

Contrairement à Windows, Python est présent nativement sous Linux. Il faut donc faire un peu plus attention à l'installation des modules que vous installés. Il est possible que vous fassiez une mise à jour malheureuse : un programme pourrait utiliser une version antérieure d'un module qui vous auriez mis à jour en croyant l'installer.

Il faudrait normalement installer un environnement virtuel pour créer une version locale de Python et y installer ce qu'on veut. C'est un peu plus long à faire mais cela garantit la stabilité de votre système.

Un environnement virtuel est donc composé d'un interpréteur Python et de ses propres modules. Le tout est intérieurement indépendant de la version Python installé globalement sur le reste de l'ordinateur. Idem pour les modules.

Cette méthode sera présentée dans la partie 3.

Pour rajouter des modules : il suffit de les installer avec les commandes suivantes :

Télécharger les modules usuels en tapant ceci dans l'invite de commande système :
  • Pour l'installer uniquement pour le user actuel :
  • rv@monordi:~$ python3 -m pip install --user Pillow rv@monordi:~$ python3 -m pip install --user matplotlib
  • Pour l'installer uniquement pour tous les users :
  • rv@monordi:~$ sudo python3 -m pip install Pillow rv@monordi:~$ sudo python3 -m pip install matplotlib

Il en existe beaucoup d'autres mais Pillow est une bibliothèque pour la gestion des images et matplotlib est une bibliothèque proposant des outils pour tracer des courbes en 2D et 3D.

Si vous ne savez plus ce que vous avez installé, tapez pip freeze ou pip list pour avoir la liste des modules installés :

rv@monordi:~$ python3 -m pip freeze rv@monordi:~$ python3 -m pip list

J'ai trouvé des instructions avec juste pip devant, c'est normal ?

Oui. Mais cela veut dire que l'ordinateur va utiliser le premier pip qu'il va trouver. Si vous avez installé plusieurs versions de Python, vous risquez alors d'installer un module sur une mauvaise version de Python.

Moralité : à moins de n'avoir qu'une seule version de Python3, n'utilisez pas juste pip.

3 - Linux - Environnement virtuel Python

Cette partie est optionnelle. Il s'agit juste d'une bonne pratique lorsqu'on manipule de nombreux scripts utilisant des spécificités liées aux versions des modules ou de python. Si vous en avez assez, vous pouvez éventuelle en finir avec cette page. Souvenez-vous simplement que les informations sont ici.

Créer un environnement virtuel revient à créer une version totalement locale de Python et de ne faire travailler vos programmes que dans cette zone bien précise. Ainsi, même si vous avez installé Python 3.4 et une multitude de modules sur votre machine de façon globale, vous pourriez vouloir travailler sur Python 3.7 et sur quelques modules adaptés à cette version 3.7

Le problème ?

Installer un module déjà installé risque de le mettre à jour et de rendre son utilisation incompatible avec un autre script qui utilise lui l'ancienne version !

Alors, comment installer un environnement virtuel ?

La méthode préconisée pour Python 3.5 à 3.7 est de commencer par avoir la version voulue de Python correctement installée sur votre système. Sachez qu'on peut installer Python 3.5 à côté de Python 3.7 sans que cela ne pose problème.

Pour connaitre les versions de Python (et sa localisation sur le poste) correspondant à vos commandes python et python3, il suffit de taper ceci dans un terminal :

rv@monordi:~$ python --version Python 2.7.15rc1
rv@monordi:~$ which python /usr/bin/python
rv@monordi:~$ python3 --version Python 3.6.7
rv@monordi:~$ which python3 /usr/bin/python3

Alors, comment créer notre environnement virtuel et le remplir de modules sans risquer d'endommager involontairement le fonctionnement d'autres scripts python ? En utilisant la commande venv.

Imaginons que vous soyez à la racine que vous attribue Linux en tant qu'utilisateur. Cet emplacement se note tilde ~ sous Linux.

On désire créer un environnement nommé test dans le répertoire mesEnvs :

Commençons par créer un environnement nommé test basé sur python3.6 dans le répertoire mesEnv :

Création : on crée avec venv l'environnement Python 3.6 dans le répertoire mesEnv sous le nom test :

rv@monordi:~$ python3.6 -m venv ~/mesEnv/test

Optionnel-Vérification : on change de répertoire (cd) pour se rendre dans mesEnvs. On y liste (ls) alors les dossiers présents. On ne devrait y trouver que test. On remonte alors dans l'arborescence à l'aide de cd .. : les deux points indiquent qu'il faut remonter dans le dossier parent.

rv@monordi:~$ cd mesEnv
rv@monordi:~/mesEnv$ ls test
rv@monordi:~/mesEnv$ cd ..

Démarage : on lance l'environnement à l'aide de source en fournissant l'adresse de la source. On peut voir que cela fonctionne à l'aide de l'indication (test) :

rv@monordi:~$ source mesEnv/test/bin/activate (test)rv@monordi:~$ which python

Optionnel-Vérification : on vérifie que la version de python correspond bien au Python crée dans l'environnement virtuel et plus le fichier binaire du Python global. On remarquera d'ailleurs que python ne pointe plus pour l'instant sur la version 2 de python mais bien sur une version 3 :

(test)rv@monordi:~$ which python /home/rv/mesEnv/test/bin/python
(test)rv@monordi:~$ python --version Python 3.6.7
(test)rv@monordi:~$ pip freeze

Remplir l'environnement : Il ne reste plus qu'à remplir votre environnement avec les modules voulus :

(test)rv@monordi:~$ pip install Pillow Successfully installed Pillow-6.0.0 (test)rv@monordi:~$ pip install django Successfully installed django-2.2.2 pytz-2019.1 sqlparse-0.3.0 (test)rv@monordi:~$ pip install matplotlib Successfully installed cycler-0.10.0 kiwisolver-1.1.0 matplotlib-3.1.0 numpy-1.16.4 pyparsing-2.4.0 python-dateutil-2.8.0 six-1.12.0
(test)rv@monordi:~$ pip freeze cycler==0.10.0 Django==2.2.2 kiwisolver==1.1.0 matplotlib==3.1.0 numpy==1.16.4 Pillow==6.0.0 pkg-resources==0.0.0 pyparsing==2.4.0 python-dateutil==2.8.0 pytz==2019.1 six==1.12.0 sqlparse==0.3.0

Pourquoi ne pas mettre python3 -m devant cette fois ?

Pour une raison toute simple : il n'y a qu'une seule version de Python dans l'environnement virtuel. Pas besoin de lancer pip via un python spécifique ! On tombe forcément sur le bon.

Après, vous pouvez toujours le taper si vous voulez.

Et voilà : nous avons notre belle et propre installation de Python qui correspond exactement à nos besoins. Je n'irai ici jusqu'à vous présenter comment installer exactement la version voulue d'un module, mais c'est possible. A vous de vous documenter. Cela permet de recréer sur un ordinateur exactement la configuration voulue et ainsi garantir le bon fonctionnement d'un projet sans craindre qu'une mise à jour ne fasse bugger l'ensemble.

Modules installés : on remarquera que pip installe les modules mais également ses dépendances : les modules dont votre module à besoin pour fonctionner.

4 - Thonny

Nous allons maintenant voir comment installer un logiciel nous permettant d'utiliser Python à travers son interface. Il s'agit de l'environnement de développement Thonny : celui-ci va installer sa propre version de Python que vous ne pourrez utiliser qu'à travers Thonny et qui n'interagira pas avec une version de Python installée de façon globale sur votre système.

Voici la marche à suivre sous Ubuntu pour installer la version liée à apt (attention, il ne s'agit pas de la dernière version à l'heure où j'écris cet article ): version 2.1

  1. Ouvrir le terminal et taper ceci :
  2. rv@monordi:~$ sudo apt install thonny

    Pour installer la dernière version :

    rv@monordi:~$ sudo apt install curl rv@monordi:~$ bash <(curl -s https://thonny.org/installer-for-linux)
  3. Démarrer thonny en cliquant sur son icône dans le menu des applications ou en tapant ceci dans un terminal :

    rv@monordi:~$ thonny &
  4. Une fois le logiciel lancé, vous obtiendrez ceci :
    • La partie du haut permet de créer des scripts qu'on pourra enregistrer et exécuter
    • La partie du bas avec trois chevrons >>> permet de taper du code à exécuter directement en mode interactif.
  5. Il nous reste à installer les modules qu'on veut importer :
    • Ouvrir le menu Tools - Manage Packages :
    • Tapez le nom du module voulu. Par exemple Pillow pour les images ou matplotlib pour les graphiques :
    • Une fois le module trouvé, il reste à cliquer sur le bouton INSTALL. Vous aurez alors accès au module et à deux nouveaux boutons : un bouton pour tenter de mettre le module à jour et un bouton pour supprimer le module de thonny.
    • Il vous reste à vérifier que le module est bien reconnu en tentant d'en importer les fonctionnalités dans la console interactive par exemple. Attention, le module Pillow est un dérivé du projet PIL. Pour garder fonctionnels les anciens scripts, les créateurs du module ont gardé le nom PIL pour l'importation. Ainsi en tapant import PIL, on importe en réalité le module Pillow... D'ailleurs, les commandes import pillow ou import Pillow ne fonctionnent pas. Comme nous l'avons dis juste au dessus, c'est historique.

Pourquoi & ? Le symbole & permet simplement de reprendre la main sur le terminal qui a permis le démarrage de Thonny. Sans lui, vous ne pourriez pas taper d'autres instructions avant la fin d'execution de Thonny.

Une fois installé, il n'y a plus qu'à l'utiliser.

Article publié le 28 08 2019
Dernière modification : 28 08 2019
Auteur : ows. h.