Les langages de programmation

Mini-cours de Python

Les bases :  I , II  - CLI - Tkinter - en détail

Avant de lire ce cours, je choisis mes couleurs

Pré-requis

Pourquoi étudier un langage de programmation ?

Certains vivent sans jamais utiliser un ordinateur. Certains se contentent d'utiliser des logiciels. Vous, vous pouvez aller plus loin en créant vos outils.

Pour ce faire, vous devez apprendre un langage de création d'outils.

Apprendre le Python, c'est très facile.

C'est le langage de programmation le plus facile. Les bases peuvent être acquises en moins de 16 heures d'étude.

L'étude des bases de Python tient en une seule (longue) page web !
Le temps de lecture est d'environ 1 heure mais le temps de compréhension peut varier d'un individu à l'autre. Il sera très court pour ceux qui ont déjà étudié un langage de programmation, car les bases sont les mêmes.

Deux jours d'étude, et hop ! Vous serez capable :

Le code nécessaire à la création de fichier texte est plus facile en Python qu'en C, notamment au niveau des caractères accentués.

Après avoir acquis les bases (deux jours d'étude), vous pourrez explorer les modules vous permettant  :

Ce tutoriel n'a pas la prétention d'être exhaustif, mais, plus modestement, de vous montrer la puissance de ce langage. Les nombreux bouts de code présentés vous aideront à acquérir cette puissance.

Créer en cinq lignes de code un logiciel (voir aperçu ci-dessous), cela vous tente ?

C'est un vrai logiciel car il se ferme via un clic (sur sa croix de fermeture)

Pour qu'un logiciel fasse plus, il faut évidemment plus de lignes de codes.

Alors ? Prêt  ?

Installations

Avant d'étudier Python, il faut l'installer.

Python

Bonne nouvelle ! Sous Ubuntu, Python est déjà installé.

Pour savoir si Python est déjà installé sur votre ordinateur, il faut :

Pour quitter l'interface lignes de commandes d'un système d'exploitation (Windows ou Linux), il suffit de taper exit (puis, taper sur la touche de validation Enter).

Sinon, il faut télécharger la dernière version sur python.org/, l'installer (sous Windows, en seulement trois clics !), puis refaire la vérification expliquée ci-dessus.

Installation sous Windows (captures d'écran)
Laissez les options par défaut

L'installation est donc très facile

Pour trouver le dossier d'installation de Python, il suffit dans une console de taper where python.

Éditeurs

Maintenant que nous avons installé ce qui interprète le code, il reste plus qu'à écrire le code. Le code est un simple texte (mais qui n'est pas écrit en français).

Pour nous faciliter ce travail d'écriture en Python, on utilise généralement un éditeur c'est-à-dire, un logiciel conçu pour ce type de texte. Un peu comme un traitement de texte pour un texte français.

Sans éditeur de code

Pour du code très court (tel qu'un bout de code présenté dans ce mini-cours), il est possible de le taper sans utiliser un éditeur. Il suffit de taper dans l'interface de ligne de commandes (du système d'exploitation) :

  • Sous Windows, python ou py (sans nom de fichier)
  • Sous Ubuntu, python3

Une fois lancé, les instructions Python sont exactement les mêmes, qu'on soit sous Windows ou Linux.

S'affichera le prompt, représenté par >>>. Ce prompt indique à l'utilisateur que le programme attend ses instructions. Il les exécutera, dès qu'il aura tapé sur la touche Enter.

Exemple (sous Windows) :

C:\Users\Bernard\Desktop>python
Python 3.9.4 ...
Type "help", "copyright", "credits" or "license" for more information.
>>> a=5;b=3;c=a+b;print(c)
8
>>> exit()
prompt et prompt

Le prompt de l'interprétateur des commandes du système d'exploitation est, ici, : C:\Users\Bernard\Desktop>
Le prompt de l'interprétateur des commandes du langage "Python" est toujours : >>>

On ne peut pas les confondre.

En tapant "python", on donne l'ordre au système d'exploitation (Windows) de lancer l'interprétateur du code écrit en Python.

En tapant "a=5;b=3;c=a+b;print(c)", on donne l'ordre au programme Python de placer 5 dans une variable appelée 'a', de mettre 3 dans la variable 'b', de mettre le résultat de l'addition de 'a' et 'b' dans la variable appelée 'c' et enfin d'afficher le contenu de la variable 'c'.

En tapant "exit()", avec parenthèses, après >>>, on donne l'ordre à l'interprétateur de code Python de se fermer. Réapparaît alors le prompt de l'interprétateur des commandes du système d'exploitation.

En tapant "exit", sans parenthèses, après le prompt de l'interprétateur des commandes du système d'exploitation, on donne l'ordre à cet interprétateur de se fermer et on revient à la situation initiale. Par exemple, sur le bureau de Windows ou de Linux.

Pour quitter l'interprétateur de commandes de Python et retourner vers celui du système d'exploitation, il suffit de taper exit() et taper sur la touche Enter.

Rappel : Pour quitter l'interface de ligne de commandes (CLI), il faut taper exit (sans parenthèses) et taper sur la touche Enter.

Si ce que vous avez tapé n'a pas de sens, l'interprétateur affichera un message d'erreur. Puis, il s'arrêtera et affichera le prompte (indiquant qu'il attend de nouvelles instructions à exécuter). Par exemple, exit(), avec parenthèses, pour fermer l'interprétateur du code écrit en Pythonpour retourner dans l'interface de lignes de commandes du système qui, à son tour, se ferme avec la commande exit, sans parenthèses.

Exemple (sous Linux) :

medion@abc:~$ python3
Python 3.8.10 (default, Sep 28 2021, 16:10:42)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> a=5;b=3;c=a+b;Print(c)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'Print' is not defined
>>> 

Le message d'erreur n'est pas facile à comprendre ...
Inutile de vous plaindre. Vous n'aviez pas à faire une erreur !
Malgré tout, on lit : 'Print' is not defined
On peut deviner que l'interprétateur du code est fâché avec 'Print'
Effectivement, 'Print' cela ne veut rien dire ...
Vous avez utilisez un mot qui n'existe pas dans "son dictionnaire".
L'interprétateur du code ne comprend donc pas ce code.

En réalité, il aurait fallu taper 'print' ...
À cause d'une toute petite faute (une majuscule au lieu d'une minuscule), le programme s'arrête.
Le code est un simple texte. Mais, il doit être sans faute.

NotePad++ (sous Windows) / gEdit (sous Ubuntu)

Le code peut être tapé dans n'importe quel éditeur de texte (mais pas dans un traitement de texte). Toutefois, pour bénéficier de la coloration syntaxique (et d'une couleur de fond)

  • Sous Windows, on peut télécharger et installer NotePad++ (si cela n'a pas déjà été fait). Après avoir ouvert un fichier, il suffit de cliquer sur le menu "Langage" pour choisir "Python" (dans la longue liste des langages dont la syntaxe est connue).

  • Sous Ubuntu, gEdit est déjà installé.

Une fois NotePad++/gEdit lancé, les instructions Python sont exactement les mêmes, qu'on soit sous Windows ou Linux.

Il suffit ensuite de créer un fichier texte, d'y taper (par exemple) :
print("Hello, World!") et de l'enregistrer sous un nom. Par exemple, "helloworld.py".

Puis, il suffit de lancer l'interface de ligne de commande dans le dossier contenant le fichier, et de taper :

  • Sous Windows, python helloworld.py
  • Sous Ubuntu, python3 helloworld.py
IDLE

IDLE utilise l'interface graphique tkinter.

  • Sous Windows,

    Python est livré avec un éditeur dédié : IDLE. C'est un logiciel (recommandé pour les débutants).

    Pour lancer cet éditeur, il suffit de double-cliquer sur le fichier idle.bat situé dans le dossier Lib\idlelib du dossier d'installation de Python.

    Par exemple : C:\Users\Thibaut\AppData\Local\Programs\Python\Python39\Lib\idlelib

    Une fois trouvé (via l'explorateur windows), pour éviter de devoir le rechercher chaque fois qu'on souhaite le lancer, il suffit de faire un clic droit sur son nom et choisir dans le menu contextuel "Créer un raccourci" (sur le bureau ou dans un dossier de raccourcis)

    sous Windows, en mode non contrasté.
    sous Windows, en mode contrasté.
  • Sous Ubuntu,

    il faut l'installer. Voir idle

    Installation sous Ubuntu

    IDLE se lance comme une application classique (comme le jeu "Démineur")

Il vous avertit lorsque vous souhaitez fermer la fenêtre. Par exemple, après avoir tapé dans le code exit() + Enter.

Comme avec NotePad++, l'apparence (et notamment la couleur de fond) est configurable (via le menu "Options")

Menus : Shell et Debug

Lorsque le code est exécuté par ce logiciel, le programme Python est "encadré". Il peut être "tué" à tout moment, via le menu "Shell" > "Interrupt Execution". Ce qui particulièrement utile lorsque le programme tombe dans une boucle infinie.

Lorsque vous ouvrez un fichier .py, une seconde fenêtre contenant un nouveau menu apparaît :

Menus : Format et Run

Le fichier "recent-files.lst" se trouve dans le dossier .idlerc du dossier de l'utilisateur.

Ne pas coller du code/texte qui n'est pas codé en UTF-8, dans l'éditeur de code (IDLE).
Y coller du code/texte non UTF-8 peut provoquer des erreurs lors de l'exécution du code.

Liens :

Visual Studio Code

Sous Windows et sous Ubuntu, il est également possible de télécharger et installer Visual Studio Code (de Microsoft), gratuitement et en anglais. Puis, d'installer l'extension "Python".

L'un des avantages de VSC est qu'il suffit de cliquer sur un bouton "Run Python File in Terminal" pour lancer le programme qu'on vient de coder. Outre cet avantage, si le programme ne fonctionne pas, il signale la ligne de code à corriger (et affiche des explications sur l'origine du problème).

Captures d'écran
Cliquez sur le bouton "Install"

Table des matières

Maintenant que vous disposez ce qui permet d'interpréter le code écrit en Python et que vous savez comment taper du code Python, il ne vous reste plus, comme en français, à connaître les règles pour que le texte ait du sens.

Les règles en Python sont plus simples que celles en français.

Ajoutons qu'il existe une forte communauté qui vous répond rapidement (en moins de 24 heures) et gratuitement, après inscription

Lors de votre inscription, fournissez une adresse e-mail dédiée à cette communauté. Tel que python@mon-nom-de-domaine.
Pas votre unique adresse e-mail ! (Des individus mal intentionnés pourrait la revendre et/ou noyer votre messagerie.)

Livre : Python 3 - Les fondamentaux du langage, par Sébastien CHAZALLET
editions-eni.fr - juin 2016 - ISBN : 987-2-409-00159-8
Exemples du livre téléchargés dans ...\2022\...\cours\pgm\python\livrExempl