Apprendre Python !
Par 6pri1 et prolixe
www.siteduzero.com
Dernière mise à jour le 27/08/2011
Sommaire
1Sommaire ...........................................................................................................................................
5Informations sur le tutoriel ...................................................................................................................
7Apprendre Python ! .............................................................................................................................
7Informations sur le tutoriel .................................................................................................................................................
8Partie 1 : Introduction à Python ...........................................................................................................
8Qu'est-ce que Python ? .....................................................................................................................................................
8
Un langage de programmation ? Qu'est-ce que c'est ? ..............................................................................................................................................
9
La communication humaine ........................................................................................................................................................................................
9
Mon ordinateur communique aussi ! ...........................................................................................................................................................................
10
Pour la petite histoire ................................................................................................................................................................................................
11
Un langage de programmation interprété ..................................................................................................................................................................
11
Différentes versions de Python .................................................................................................................................................................................
12
Installer Python .........................................................................................................................................................................................................
12
Sous Windows ..........................................................................................................................................................................................................
12
Sous Linux ................................................................................................................................................................................................................
12
Sous Mac OS ............................................................................................................................................................................................................
12
Lancer Python ...........................................................................................................................................................................................................
14Premiers pas avec l'interpréteur de commandes Python ...............................................................................................
15
Où est-ce qu'on est, là ? ...........................................................................................................................................................................................
17
Vos premières instructions : un peu de calcul mental pour l'ordinateur ....................................................................................................................
17
Entrer un nombre ......................................................................................................................................................................................................
18
Opérations courantes ................................................................................................................................................................................................
19Le monde merveilleux des variables ...............................................................................................................................
19
C'est quoi, des variables ? Et à quoi ça sert ? ..........................................................................................................................................................
20
C'est quoi, des variables ? ........................................................................................................................................................................................
20
Comment ça marche ? ..............................................................................................................................................................................................
22
Les types de données en Python ..............................................................................................................................................................................
23
Qu'entend-t-on par "type de donnée" ? .....................................................................................................................................................................
23
Les différents types de données ...............................................................................................................................................................................
25
Un petit bonus ...........................................................................................................................................................................................................
26
Quelques trucs et astuces pour vous faciliter la vie ..................................................................................................................................................
26
Première utilisation des fonctions .............................................................................................................................................................................
27
Utiliser une fonction ...................................................................................................................................................................................................
27
La fonction "type" ......................................................................................................................................................................................................
28
La fonction "print" ......................................................................................................................................................................................................
29Les structures conditionnelles .........................................................................................................................................
30
Vos premières conditions et blocs d'instructions .......................................................................................................................................................
30
Forme minimale en if .................................................................................................................................................................................................
31
Forme complète (if, elif et else) .................................................................................................................................................................................
33
De nouveaux opérateurs ...........................................................................................................................................................................................
34
Les opérateurs de comparaison ................................................................................................................................................................................
34
Prédicats et booléens ................................................................................................................................................................................................
35
Les mots clés "and", "or" et "not" ..............................................................................................................................................................................
37
Votre premier programme ! .......................................................................................................................................................................................
37
Avant de commencer ................................................................................................................................................................................................
37
Sujet ..........................................................................................................................................................................................................................
37
Solution ou résolution ................................................................................................................................................................................................
39
Correction ..................................................................................................................................................................................................................
40Les boucles .....................................................................................................................................................................
40
En quoi ça consiste ? ................................................................................................................................................................................................
42
La boucle while .........................................................................................................................................................................................................
44
La boucle for ..............................................................................................................................................................................................................
46
Un petit bonus : les mot-clés break et continue ........................................................................................................................................................
47
break .........................................................................................................................................................................................................................
47
continue .....................................................................................................................................................................................................................
48Pas à pas vers la modularité (1/2) ..................................................................................................................................
48
Les fonctions : à vous de jouer .................................................................................................................................................................................
49
La création de fonctions ............................................................................................................................................................................................
51
Valeurs par défaut des paramètres ...........................................................................................................................................................................
52
Signature d'une fonction ............................................................................................................................................................................................
52
L'instruction return .....................................................................................................................................................................................................
53
Les fonctions lambda ................................................................................................................................................................................................
54
Syntaxe .....................................................................................................................................................................................................................
55
Utilisation ...................................................................................................................................................................................................................
55
À la découverte des modules ....................................................................................................................................................................................
56
Les modules, qu'est-ce que c'est ? ...........................................................................................................................................................................
Sommaire 1/296
www.siteduzero.com
56
La méthode import ....................................................................................................................................................................................................
57
Utiliser un espace de noms spécifique ......................................................................................................................................................................
58
Une autre méthode d'importation : from ... import ... .................................................................................................................................................
59
Bilan ..........................................................................................................................................................................................................................
59Pas à pas vers la modularité (2/2) ..................................................................................................................................
60
Mettre en boîte notre code ........................................................................................................................................................................................
61
Fini, l'interpréteur ? ....................................................................................................................................................................................................
61
Emprisonnons notre programme dans un fichier ......................................................................................................................................................
62
Quelques ajustements ..............................................................................................................................................................................................
64
Je viens pour conquérir le monde... et créer mes propres modules .........................................................................................................................
64
Mes modules à moi ...................................................................................................................................................................................................
65
Faire un test de module dans le module-même ........................................................................................................................................................
66
Les packages ............................................................................................................................................................................................................
67
En théorie ..................................................................................................................................................................................................................
67
En pratique ................................................................................................................................................................................................................
69Les exceptions ................................................................................................................................................................
69
À quoi ça sert ? .........................................................................................................................................................................................................
71
Forme minimale du bloc try .......................................................................................................................................................................................
71
Forme plus complète .................................................................................................................................................................................................
72
Exécuter le bloc except pour un type d'exceptions précis .........................................................................................................................................
73
Les mots-clés else et finally ......................................................................................................................................................................................
74
Un petit bonus : le mot-clé pass ................................................................................................................................................................................
76
Les assertions ...........................................................................................................................................................................................................
76
Lever une exception ..................................................................................................................................................................................................
77TP 1 : tous au ZCasino ....................................................................................................................................................
79
Notre sujet .................................................................................................................................................................................................................
79
Notre règle du jeu ......................................................................................................................................................................................................
79
Organisons notre projet .............................................................................................................................................................................................
80
Le module random ....................................................................................................................................................................................................
80
Arrondir un nombre ...................................................................................................................................................................................................
80
A vous de jouer .........................................................................................................................................................................................................
81
Correction ! ................................................................................................................................................................................................................
82
Et maintenant ? .........................................................................................................................................................................................................
83Partie 2 : La Programmation Orientée Objet en tant qu'utilisateur ....................................................
84Notre premier objet : les chaînes de caractères .............................................................................................................
85
Vous avez dit objet ? .................................................................................................................................................................................................
85
Les méthodes de la classe str ...................................................................................................................................................................................
87
Mettre en forme une chaîne ......................................................................................................................................................................................
88
Formater et afficher une chaîne ................................................................................................................................................................................
92
Parcours et sélection de chaînes ..............................................................................................................................................................................
93
Parcours par indice ...................................................................................................................................................................................................
94
Sélection de chaînes .................................................................................................................................................................................................
95Les listes et tuples (1/2) ..................................................................................................................................................
95
Créons et éditons nos premières listes .....................................................................................................................................................................
96
D'abord c'est quoi, une liste ? ...................................................................................................................................................................................
96
Création de listes ......................................................................................................................................................................................................
97
Ajouter des objets dans une liste ..............................................................................................................................................................................
99
Suppression d'éléments d'une liste ...........................................................................................................................................................................
101
Le parcours de listes ...............................................................................................................................................................................................
101
La fonction range .....................................................................................................................................................................................................
102
La fonction enumerate .............................................................................................................................................................................................
104
Un petit coup d'œil aux tuples .................................................................................................................................................................................
105
Affectation multiple ..................................................................................................................................................................................................
106
Une fonction retournant plusieurs valeurs ...............................................................................................................................................................
106Les listes et tuples (2/2) ................................................................................................................................................
106
Entre chaînes et listes .............................................................................................................................................................................................
107
Des chaînes aux listes ............................................................................................................................................................................................
107
Des listes aux chaînes ............................................................................................................................................................................................
108
Une application pratique .........................................................................................................................................................................................
108
Les listes et paramètres de fonctions ......................................................................................................................................................................
109
Les fonctions dont on ne connaît pas le nombre de paramètres à l'avance ...........................................................................................................
111
Transformer une liste en paramètres de fonction ....................................................................................................................................................
112
Les compréhensions de liste ...................................................................................................................................................................................
113
Parcours simple ......................................................................................................................................................................................................
113
Filtrage avec un branchement conditionnel ............................................................................................................................................................
113
Mélangeons un peu tout ça .....................................................................................................................................................................................
114
Nouvelle application concrète .................................................................................................................................................................................
116Les dictionnaires ...........................................................................................................................................................
117
Création et édition de dictionnaires .........................................................................................................................................................................
117
Créer un dictionnaire ...............................................................................................................................................................................................
119
Supprimer des clés d'un dictionnaire ......................................................................................................................................................................
120
Un peu plus loin ......................................................................................................................................................................................................
121
Les méthodes de parcours ......................................................................................................................................................................................
Sommaire 2/296
www.siteduzero.com
122
Parcours des clés ....................................................................................................................................................................................................
122
Parcours des valeurs ..............................................................................................................................................................................................
123
Parcours des clés et valeurs simultanément ...........................................................................................................................................................
124
Les dictionnaires et paramètres de fonction ...........................................................................................................................................................
124
Récupérer les paramètres nommés dans un dictionnaire .......................................................................................................................................
124
Transformer un dictionnaire en paramètres nommés d'une fonction ......................................................................................................................
125Les fichiers ....................................................................................................................................................................
126
Avant de commencer ..............................................................................................................................................................................................
126
Mais d'abord pourquoi lire ou écrire dans des fichiers ? .........................................................................................................................................
126
Changer le répertoire de travail courant ..................................................................................................................................................................
126
Chemins relatifs et absolus .....................................................................................................................................................................................
128
Lecture et écriture dans un fichier ...........................................................................................................................................................................
128
Ouverture du fichier .................................................................................................................................................................................................
128
Fermer le fichier ......................................................................................................................................................................................................
129
Lire l'intégralité du fichier .........................................................................................................................................................................................
129
Écriture dans un fichier ...........................................................................................................................................................................................
130
Écrire d'autres types de données ............................................................................................................................................................................
130
Le mot-clé with ........................................................................................................................................................................................................
131
Enregistrer des objets dans des fichiers .................................................................................................................................................................
132
Enregistrer un objet dans un fichier ........................................................................................................................................................................
133
Récupérer nos objets enregistrés ...........................................................................................................................................................................
133Portée des variables et références ...............................................................................................................................
133
La portée des variables ...........................................................................................................................................................................................
134
Dans nos fonctions, quelles variables sont accessibles ? ......................................................................................................................................
134
La portée de nos variables ......................................................................................................................................................................................
139
Les variables globales .............................................................................................................................................................................................
139
Le principe des variables globales ..........................................................................................................................................................................
139
Utiliser concrètement les variables globales ...........................................................................................................................................................
140TP 2 : un bon vieux petit pendu ....................................................................................................................................
140
Votre mission ..........................................................................................................................................................................................................
141
Un jeu du pendu ......................................................................................................................................................................................................
141
Le côté technique du problème ...............................................................................................................................................................................
141
Gérer les scores ......................................................................................................................................................................................................
141
À vous de jouer .......................................................................................................................................................................................................
142
Correction proposée ................................................................................................................................................................................................
142
donnees.py ..............................................................................................................................................................................................................
142
fonctions.py .............................................................................................................................................................................................................
144
pendu.py ..................................................................................................................................................................................................................
145
Résumé ...................................................................................................................................................................................................................
147Partie 3 : La Programmation Orientée Objet, côté développeur ......................................................
147Première approche des classes ....................................................................................................................................
147
Les classes, tout un monde ....................................................................................................................................................................................
148
Pourquoi utiliser des objets ? ..................................................................................................................................................................................
148
Choix du modèle .....................................................................................................................................................................................................
148
Convention de nommage ........................................................................................................................................................................................
149
Nos premiers attributs .............................................................................................................................................................................................
151
Quand on créée notre objet… .................................................................................................................................................................................
151
Étoffons un peu notre constructeur .........................................................................................................................................................................
153
Attributs de classe ...................................................................................................................................................................................................
154
Les méthodes, la recette .........................................................................................................................................................................................
155
Le paramètre self ....................................................................................................................................................................................................
156
Des méthodes de classe .........................................................................................................................................................................................
158
Un peu d'introspection .............................................................................................................................................................................................
158
La fonction dir ..........................................................................................................................................................................................................
159
L'attribut spécial __dict__ ........................................................................................................................................................................................
160Les propriétés ................................................................................................................................................................
161
Que dit l'encapsulation ? .........................................................................................................................................................................................
161
Les propriétés à la casserole ..................................................................................................................................................................................
163
Les propriétés en action ..........................................................................................................................................................................................
164
Résumons le principe d'encapsulation en Python ...................................................................................................................................................
165Les méthodes spéciales ................................................................................................................................................
165
Édition de l'objet et accès aux attributs ...................................................................................................................................................................
166
Édition de l'objet ......................................................................................................................................................................................................
167
Représentation de l'objet .........................................................................................................................................................................................
168
Accès aux attributs de notre objet ...........................................................................................................................................................................
172
Les méthodes de conteneur ....................................................................................................................................................................................
172
Accès aux éléments d'un conteneur .......................................................................................................................................................................
172
La méthode spéciale derrière le mot-clé in .............................................................................................................................................................
173
Connaître la taille d'un conteneur ............................................................................................................................................................................
174
Les méthodes mathématiques ................................................................................................................................................................................
174
Ce qu'il faut savoir ...................................................................................................................................................................................................
176
Tout dépend du sens ...............................................................................................................................................................................................
176
D'autres opérateurs .................................................................................................................................................................................................
177
Les méthodes de comparaison ...............................................................................................................................................................................
Sommaire 3/296
www.siteduzero.com
179
Des méthodes spéciales utiles à pickle ..................................................................................................................................................................
180
La méthode spéciale __getstate__ .........................................................................................................................................................................
181
La méthode __setstate__ ........................................................................................................................................................................................
181
On peut enregistrer en fichier autre chose que des dictionnaires ...........................................................................................................................
181
Je veux encore plus puissant ! ................................................................................................................................................................................
182L'héritage .......................................................................................................................................................................
183
Pour bien commencer .............................................................................................................................................................................................
185
L'héritage simple .....................................................................................................................................................................................................
187
Petite précision ........................................................................................................................................................................................................
188
Deux fonctions très pratiques ..................................................................................................................................................................................
188
L'héritage multiple ...................................................................................................................................................................................................
189
Recherche des méthodes .......................................................................................................................................................................................
190
Retour sur les exceptions ........................................................................................................................................................................................
190
Création d'exceptions personnalisées .....................................................................................................................................................................
192Derrière la boucle for .....................................................................................................................................................
192
Les itérateurs ...........................................................................................................................................................................................................
193
Utiliser les itérateurs ................................................................................................................................................................................................
194
Créons nos itérateurs ..............................................................................................................................................................................................
195
Les générateurs ......................................................................................................................................................................................................
196
Les générateurs simples .........................................................................................................................................................................................
198
Les générateurs comme co-routines .......................................................................................................................................................................
199
Voir aussi ................................................................................................................................................................................................................
199TP 3 : un dictionnaire ordonné ......................................................................................................................................
199
Notre mission ..........................................................................................................................................................................................................
200
Spécifications ..........................................................................................................................................................................................................
201
Exemple de manipulation ........................................................................................................................................................................................
201
Tous au départ ! ......................................................................................................................................................................................................
203
Correction proposée ................................................................................................................................................................................................
205
Le mot de la fin ........................................................................................................................................................................................................
206Les décorateurs .............................................................................................................................................................
206
Qu'est-ce que c'est ? ...............................................................................................................................................................................................
208
En théorie ................................................................................................................................................................................................................
208
Format le plus simple ..............................................................................................................................................................................................
209
Modifier le comportement de notre fonction ............................................................................................................................................................
212
Un décorateur avec des paramètres .......................................................................................................................................................................
215
Tenir compte des paramètres de notre fonction ......................................................................................................................................................
215
Des décorateurs s'appliquant aux définitions de classes ........................................................................................................................................
216
Chaîner nos décorateurs .........................................................................................................................................................................................
217
Exemples d'application ............................................................................................................................................................................................
217
Des classes singleton .............................................................................................................................................................................................
218
Contrôler les types passés à notre fonction ............................................................................................................................................................
220Partie 4 : Les merveilles de la librairie standard ..............................................................................
221Les expressions régulières ...........................................................................................................................................
222
Que sont les expressions régulières ? ....................................................................................................................................................................
222
Quelques syntaxes pour les expressions régulières ...............................................................................................................................................
222
Concrètement, ça se présente comment ? .............................................................................................................................................................
222
Des caractères ordinaires .......................................................................................................................................................................................
222
Rechercher au début ou à la fin de la chaîne .........................................................................................................................................................
222
Contrôler le nombre d'occurences ..........................................................................................................................................................................
223
Les classes de caractères .......................................................................................................................................................................................
224
Les groupes .............................................................................................................................................................................................................
225
Le module re ...........................................................................................................................................................................................................
225
Chercher dans une chaîne ......................................................................................................................................................................................
227
Remplacer une expression .....................................................................................................................................................................................
228
Des expressions compilées ....................................................................................................................................................................................
229Les temps ......................................................................................................................................................................
229
Le module time ........................................................................................................................................................................................................
230
Représenter une date et une heure dans un nombre unique ..................................................................................................................................
231
La date et l'heure de façon plus présentable ..........................................................................................................................................................
232
Récupérer un timestamp depuis une date ..............................................................................................................................................................
232
Mettre en pause l'exécution du programme pendant un temps déterminé .............................................................................................................
232
Formatter un temps .................................................................................................................................................................................................
233
Bien d'autres fonctions ............................................................................................................................................................................................
234
Le module datetime .................................................................................................................................................................................................
235
Représenter une date ..............................................................................................................................................................................................
236
Représenter une heure ...........................................................................................................................................................................................
236
Représenter des dates et heures ............................................................................................................................................................................
237Un peu de programmation système ..............................................................................................................................
238
Les entrées et sorties standard ...............................................................................................................................................................................
238
Accéder aux entrées et sorties standard .................................................................................................................................................................
239
Modifier les entrées et sorties standard ..................................................................................................................................................................
240
Les signaux .............................................................................................................................................................................................................
241
Les différents signaux .............................................................................................................................................................................................
Sommaire 4/296
www.siteduzero.com
1 / 297 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !