Master 1ère année
Mon’tit Python P-F. Bonnefoi
Version du 1 novembre 2014
Mon’tit Python – P-F.B.
Table des matières
1PourquoiPython? .................................................................... 5
Pourquoi Python ? Ses caractéristiques ............................................. 6
Pourquoi Python ? Ses usages ..................................................... 7
2UnprogrammePython ................................................................ 8
3StructuredunsourcePython ......................................................... 10
4Lesvariables ....................................................................... 11
5Lesvaleursettypesdebase ......................................................... 12
6Les structures de contrôle Instructions & Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
LesstructuresdecontrôleItérations .............................................. 14
7Lesopérateurs ...................................................................... 15
8Lagestiondescaractères ............................................................ 16
9Leschaînesdecaractères ............................................................ 17
10 Leslistes ........................................................................... 18
LeslistesExemplesdutilisation ................................................ 19
Les listes Utilisation comme «pile» et «file» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
L’accès aux éléments d’une liste ou d’un tuple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Utilisationavancéedeslistes ..................................................... 22
Utilisation avancée : création d’une liste à partir d’une autre . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Utilisationavancée:lopérateurternaire ............................................ 24
Tableau&listemodiable ........................................................ 25
Mon’tit Python – P-F.B.
Un accès par indice aux éléments d’une chaîne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
11 Lesdictionnaires .................................................................... 27
12 Lesmodulesetlespacedenom ...................................................... 29
13 Lessortiesécran .................................................................... 30
14 Lesentréesclavier .................................................................. 31
15 Lesconversions ..................................................................... 32
16 Quelquesremarques ................................................................ 34
17 Gestiondeserreurs ................................................................. 35
Gestiondeserreurs&Exceptions ................................................. 36
18 Leschiers:création ................................................................ 37
Leschiers:lectureparligne ..................................................... 38
Leschiers:lecturespécialeetécriture ............................................ 39
Manipulationdesdonnéesstructurées ............................................. 40
19 Expressions régulières ou expressions rationnelles ...................................... 42
ExpressionsrégulièresenPython ................................................. 43
ERCompléments:gestiondumotif .............................................. 44
ER Compléments : éclatement et recomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
20 Lesfonctions:dénition&arguments .................................................. 46
21 Lecontrôlederreuràlexécution ...................................................... 48
22 Génération de valeurs aléatoires : le module random ................................... 49
23 L’intégration dans Unix : l’écriture de Script système ...................................... 50
24 Gestiondeprocessus:lancerunecommande .......................................... 51
Gestion de processus,nouvelle Version ! Utilisation du module subprocess .......... 52
Mon’tit Python – P-F.B.
Gestion de processus : création d’un second processus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
25 ProgrammationSocket:protocoleTCP ................................................. 54
ProgrammationSocket:clientTCP ................................................ 55
ProgrammationSocket:serveurTCP .............................................. 56
Programmation Socket : TCP & bufférisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
ProgrammationSocket:lectureparligne ........................................... 58
ProgrammationSocket:modenonbloquant ........................................ 59
Programmation socket : gestion par événement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Programmation socket : le select ............................................... 61
Programmationsocket:leprotocoleUDP .......................................... 62
26 MultithreadingThreads ............................................................. 63
MultithreadingSémaphores ..................................................... 64
27 Manipulationsavancées:systèmedechier ............................................ 65
Réseaux : broadcast UDP, obtenir son adresse IP, Scapy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
La programmation objet : définition de classe et introspection . . . . . . . . . . . . . . . . . . . . . . . . . 67
Intégration Unix : les options en ligne de commande : le module optparse ........... 68
28 Débogage:utilisationdumodeinteractif ............................................... 70
Débogage avec le module «pdb»,«PythonDebugger» .............................. 71
Surveiller l’exécution, la «journalisation» : le module logging ....................... 72
29 PouraméliorerlexpériencedePython ................................................. 74
30 Index .............................................................................. 75
Mon’tit Python – P-F.B.
1 Pourquoi Python ? 5
Parce qu’il est :
portable : disponible sous toutes les plate-formes (de Unix à Windows) ;
simple : possède une syntaxe claire, privilégiant la lisibilité, libérée de celle de C/C++ ;
riche : incorpore de nombreuses capacités tirées de différents modèles de programmation :
programmation impérative :structure de contrôle, manipulation de nombres comme les flot-
tants, doubles, complexe, de structures complexes comme les tableaux, les dictionnaires, etc.
langages de script : accès au système, manipulation de processus, de l’arborescence fichier,
d’expressions rationnelles, etc.
programmation fonctionnelle :les fonctions sont dites «fonction de première classe», car elles
peuvent être fournies comme argument d’une autre fonction, il dispose aussi de lambda expres-
sion (fonction anonyme), de générateur etc.
programmation orienté objet :définition de classe, héritage multiple, introspection (consultation
du type, des méthodes proposées), ajout/retrait dynamique de classes, de méthode, compilation
dynamique de code, délégation ("duck typing"), passivation/activation, surcharge d’opérateurs,
etc.
1 / 76 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 !