4TABLE DES MATI `
ERES
2.7.4 Scinder les chaˆınes : la commande split . . . . . . . . . . . . . . . . . . 29
2.8 Entr´ee et sortie standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.8.1 Sortie standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.8.2 Entr´ee standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.9 Op´erateurs logiques et relationnels . . . . . . . . . . . . . . . . . . . . . . . . 31
2.9.1 Op´erateurs relationnels . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.9.2 Op´erateurs logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.10 Structures de s´election . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.10.1 La structure si/sinon (if/else/elif) .................. 33
2.11Boucles ....................................... 34
2.11.1 La boucle for ................................ 34
2.11.2 La boucle while .............................. 35
2.12 Lecture et ´ecriture de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.12.1 Redirection des entr´ee et sortie standards . . . . . . . . . . . . . . . . 36
2.12.2 ´
Ecriture dans un fichier . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.12.3 Lecture `a partir d’un fichier . . . . . . . . . . . . . . . . . . . . . . . . 38
2.12.4 Lecture d’un fichier quelconque . . . . . . . . . . . . . . . . . . . . . . 38
2.12.5 Lecture et ´ecriture de caract`eres accentu´es . . . . . . . . . . . . . . . 39
2.13 Listes, tuples, dictionnaires et tableaux . . . . . . . . . . . . . . . . . . . . . . 40
2.13.1 Les listes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.13.2 Dictionnaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.14 Quitter le programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3 Structure d’un programme en python 47
3.1 M´ethodes, variables et constantes de classe . . . . . . . . . . . . . . . . . . . 47
3.1.1 Biblioth`eques de classes . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.1.2 Constantes et variables de la classe . . . . . . . . . . . . . . . . . . . . 48
3.1.3 M´ethodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.1.4 Programme-type `a une classe. . . . . . . . . . . . . . . . . . . . . . . . 49
3.1.5 Qualificatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2 M´ethodes ...................................... 51
3.2.1 La m´ethode principale . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2.2 Utilisation d’arguments dans d’autres m´ethodes . . . . . . . . . . . . . 53
3.2.3 M´ethodes r´ecursives . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2.4 Liste d’arguments flexible . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3 Classes........................................ 56
3.4 Les biblioth`eques de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4 La programmation orient´ee objet 59
4.1 La classe : l’objet de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.2 D´efinir les classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.2.1 Exemple : un objet nomm´e Bloc . . . . . . . . . . . . . . . . . . . . . 60
4.3 Initialisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.4 H´eritage....................................... 63
4.5 R`egles d’h´eritage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.6 Comment les classes d´ecrivent-elles les objets ? . . . . . . . . . . . . . . . . . 64