Sommaire

Introduction

Cet aide-mémoire expose la syntaxe du langage de programmation *python* et quelques opérations de base. Idéal pour se rafraîchir la mémoire, il peut également servir à un apprentissage de ce langage pour des personnes qui connaissent déjà un ou plusieurs langages de programmation.

Programmer consiste à donner des ordres à un ordinateur. Ces ordres sont très simples : "met une valeur à 5", "additionne deux valeurs", "affiche une valeur". C'est la combinaison de ces ordres qui permet de faire des choses très complexes. Un programme est un ensemble autonome d'ordres constitué dans un but précis : éditer du texte, une image, une photo, contacter des personnes... Un équivalent très utilisé en informatique pour le mot ordre est le mot instruction, et de façon plus générale, pour les désigner on parle de code. Pour écrire ces instructions, il faut utiliser un langage de programmation que l'ordinateur comprend. Le programmeur doit donc apprendre un langage et c'est l'objet de cette fiche. Il existe des milliers de langage de programmation. Nous nous intéresserons ici au langage Python qui est à la fois simple et puissant. En Python, les programmes sont également appelés des scripts.

mis à jour le 15 mars 2021, créé le 4 avril 2017, converti en HML le 15 mars 2021.

Damien Gouteux

1. Bases du langage

1.1 Description

Python est apparu en 1990, créé par Guido Van Rossum, un néerlandais. Les principales caractéristiques du langage sont :

La version majeure actuelle (mars 2021) est la version 3 et est disponible selon les termes de la licence Python Software Foundation License (PSFL) semblable à la BSD.

À l'heure où j'écris ces lignes (mars 2021), la version actuelle est la 3.9, mais tous les versions supérieures marcheront aussi pour ce tutoriel. À chaque version, le langage s'améliore, mais aussi parfois, il change son fonctionnement, surtout entre les versions majeures (le premier chiffre). Ainsi, un script écrit pour les versions de Python 2.x (où x est compris entre 0 et 7) a de fortes chances de ne plus marcher pour les versions de Python 3.

Date d'apparition du langage : 1990

Créateurs : Guido Van Rossum (Pays-Bas)

Extension d'un fichier Python : py

Exécuter mon_fichier.py : python mon_fichier.py

1.2 Historique et influences

Python est un hommage aux groupes d'humoristes britanniques les Monthy Pythons.

1.3 Désavantages

TODO

1.4 Utilisations

TODO

1.5 Installation

La première chose à faire est de vérifier que vous avez les outils nécessaires pour le langage Python installés sur votre machine. Pour cela, ouvrez une console. Sous Windows, il faut faire aller dans Exécuter et taper cmd. Une console s'ouvre. Dedans tapez python. Si vous avez un message d'erreur, c'est que les outils ne sont pas installés sur votre machine. Rendez-vous sur [[https://www.python.org/downloads/]] pour télécharger la dernière version.

Pour les utilisateurs sous Unix, Linux et BSD, Python est souvent de base installé sur vos machines. Vérifiez juste la version et si c'est une version 2.x, mettez la à jour. Vous pouvez également, si vous êtes un utilisateur avec de bonnes connaissances d'informatique, recompiler les outils Python à partir de leur code source. Pour les utilisateurs Mac, vous devez également avoir une version de base qui peut être ancienne, n'hésitez pas à télécharger une version plus récente sur le site officiel.

La suite d'outil se compose d'un interpréteur qui transmet vos instructions en Python à l'ordinateur et d'un éditeur de texte spécial, IDLE. Dans IDLE vous pouvez taper vos instructions et il les transmet à l'interpréteur puis affiche le résultat de vos instructions. Une fois installé, trouvez IDLE et lancez-le. Une fenêtre s'ouvre, intitulée Python 3.5.0 Shell. Elle indique des informations détaillées sur la version que vous utilisez et affiche >>>. Il s'agit du symbole qui vous invite à entrer des instructions. Vous pouvez taper des instructions directement à la suite de ce symbole comme l'exemple plus haut, taper sur entrée et voir le résultat.

Le Shell d'IDLE est ce qu'on appelle un REPL pour read-eval-print-loop. C'est-à-dire que le Shell attend puis lit votre instruction, la transmet à l'ordinateur, affiche son résultat et recommence. C'est pratique pour tester rapidement quelque chose mais pour programmer des scripts plus longs, il faut les écrire dans un fichier. Dans IDLE, cliquez sur File puis New File. Une seconde fenêtre s'ouvre, c'est dans celle-ci que vous taperez votre script, nous l'appellerons la fenêtre d'édition pour la différencier de la fenêtre de Shell. Tapez dedans à nouveau la première instruction et cliquer sur Run puis Run Module (ou tapez F5). Il vous demandera la première fois de sauvegarder ce fichier. Cliquez sur OK et enregistrez votre fichier dans un endroit où vous le retrouverez avec un nom qui explique de quoi il s'agit, comme premiers_essais ou apprentissage. IDLE bascule ensuite sur la fenêtre de Shell et affiche le résultat de l'exécution de votre programme.

1.6 Bonjour le monde !

La tradition veut que l'on commence par écrire "Bonjour le monde !" lorsque l'on découvre un nouveau langage de programmation. Nous ne dérogeons pas à la règle.

Un fichier de script Python porte l'extension .py qui s'ajoute au nom que vous lui aurez donné. Il est important que dans le nom que vous avez choisi ne figure pas d'espace, utilisez des tirets bas à la place, ni de caractères accentués ou spéciaux. Vous pouvez également, sans passer par IDLE, programmer en Python ou lancer un programme depuis la console. Ouvrez une console, puis tapez python. Une boucle REPL qui ressemble au Shell d'IDLE s'ouvrira alors où vous pourrez taper des instructions. De même, si vous tapez dans la console python suivi du nom de votre programme (python premiers_essais.py par exemple), il s'exécutera directement dans la console où il affichera ses résultats. Sous Unix, Linux, BSD et Mac, vous pouvez rendre exécutable vos fichiers de scripts en mettant en première ligne #!/usr/bin/env python et en faisant chmod +x sur ceux-ci.

# Ceci est un commentaire jusqu'à la fin de la ligne
print("Bonjour le monde !")

Vous venez de voir une première instruction valide en Python. Celle-ci affiche à l'écran les mots Hello World! C'est une tradition dans l'informatique de commencer par ce petit exemple.

Nous utiliserons une police et un formatage particuliers quand nous écrirons du code.

1.7 Affichage

Affichage sur la sortie standard (console) : print


1.8 Mots réservés

Mots réservés (29) : and, as, assert, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, not, or, pass, raise, return, try, while, with, yield.

1.9 Commentaires

Commentaires en Python :

# mon commentaire jusqu'à la fin de la ligne

Commentaires sur plusieurs lignes :

"""
   un commentaire long
   sur de nombreuses lignes
"""

1.10 Variables

Une variable est une référence vers une valeur. Une valeur a un type, pas la variable. L'exemple suivant établie une référence entre la variable a et la valeur 5 de type number.

a = 5

Il n'y a pas de constantes en Python : une variable peut référencer ensuite une autre valeur.

Une variable peut référencer n'importe quel type de valeur.

Retour sommaire

2. Sites web

2.1 Bibliothèques

2.2 Outils

Retour sommaire

3. Types de base

Les types possibles pour les valeurs sont au nombre de 8 :

Le type None n'a qu'une seule valeur, None. Le type boolean a deux valeurs, True et False.

Le type number a pour valeurs les entiers et les réels (ou flottants). Les conversions de l'un vers l'autre type sont automatiques. Par défaut, entiers et réels sont stockés sur 64 bits.

Le type function sera plus étudié dans le chapitre suivant. Il s'agit de bloc de code écrit en Lua ou en C.

Le type string unifie les caractères et les chaînes de caractères. Lua peut stocker les chaînes en UTF-8 mais ne sait pas comment les gérer.

Remarques importantes :

Nombres

Chaînes de caractères

Booléens

Valeur nil

Tables

Définition

Accès

Métatable

Retour sommaire

4. Opérateurs

Opérateurs binaires

Opérateurs arithmétiques

Opérateurs de comparaisons

Opérateurs booléens

Autres opérateurs

Opérateurs unaires

Opérateurs arithmétiques

Opérateurs booléens

Retour sommaire

5. Contrôle du flux

Séquence

En Python, il suffit de retourner à la ligne pour terminer une instruction. Pour séparer deux instructions sans retour à ligne, on utilise ;.

Conditions

Pour qu'une partie du code ne soit exécutée que si une condition est vrai, on utilisera if :

if condition:
    actions
[ elif condition:
    actions ] *
[ else:
    actions ]

Sont considérées fausses les valeurs false et nil. Toutes les autres valeurs sont vraies (dont {} "" 0).

Répétitions

Boucle qui s'exécute tant que la condition est vraie avec while :

while condition:
    actions

Le corps de la boucle (ses actions) sera exécuté entre 0 et n fois.

Autre grand classique des boucles, for qui peut-être utilisé avec un intervalle numérique :

for identifiant in iterable:
    actions

On peut faire un iterable avec la fonction range(stop) qui va jusqu'à de 0 à stop-1. Par défaut le pas est égal à 1.

Pour parcourir une liste on fera simplement for value in liste: et pour avoir l'index et la valeur for index, value in enumerable(liste): .

Pour parcourir un dictionnaire on fera simplement for key in dictionnaire: et pour la clé et la valeur for key, value in dictionnaire.items() .

On peut utiliser le mot-clé break pour sortir de la boucle.

On peut utiliser le mot-clé continue pour passer à l'itération suivante.

Retour sommaire

6. Fonctions

Définition

Appel

Closure

Retour sommaire

7. Gestion des exceptions

Appels protégés

Retour sommaire

8. Bibliothèque de base

Sortie et entrée console

Nombres

Chaînes de caractères

Tables

Fichiers

Retour sommaire