Utilisateur:Regards sur sciences/Python
Apparence
Traits généraux
[modifier | modifier le wikicode]- Typage dynamique: l'interprète détermine le type à la volée lors de l'exécution du code.
- Principe d'indentation.
- Portée lexicale : lorsqu'une expression fait référence à une variable à l'intérieur d'une fonction, Python cherche la valeur définie à l'intérieur de la fonction et à défaut la valeur dans l'espace global.
- Appel de fonction par valeur : l'exécution de f (e) évalue d'abord l'expression e puis exécute f avec la valeur obtenue. Certaines valeurs sont des scalaires (booléens, entiers, etc.) d'autres des adresses (listes, objets, etc.).
Types de base
[modifier | modifier le wikicode]- Opérations sur les entiers (int) : —. *. //. **. % avec des opérandes positifs.
- Opérations sur les flottants (f bat) —. *. /. **.
- Opérations sur les booléens (bool) : flot, or. and (et leur caractère paresseux). * Comparaisons
Types structurés
[modifier | modifier le wikicode]- Structures indicées immuables (chaînes, n-uplets) : len, accès par indice positif valide, concaténation +, répétition *, extraction de tranche.
- Listes : création par compréhension [e for x in si, par [e] * n, par append successifs; len, accès par indice positif valide; concaténation +, extraction de tranche, copie (y compris son caractère superficiel); pop en dernière position. Identification des tableaux et des listes.
- Dictionnaires : création {Ci : Vi, ..., c, : v}, accès, insertion (d[k] = y), présence d'une clé (k in d), len, copy
- Ensembles : création set(), insertion (add), présence d'un élément (e in s), len. Divers
- Annotations de types. Vérification statique avec un outil tel que mypy.
- Manipulation de fichiers texte (la documentation utile de ces fonctions doit être rappelée; tout problème relatif aux encodages est éludé) : open. read. readiine. readlines. spiit. write. close. Construction with.
- Tirage pseudo-aléatoire avec la fonction randint du module random.
Structures de contrôle
[modifier | modifier le wikicode]- Instruction d'affectation avec =. Dépaquetage de n-uplets.
- Instruction conditionnelle : if. el if. else.
- Boucle while (sans else). break, continue. return dans un corps de boucle.
- Boucle for (sans else) et itération sur range (o, 1)), une chaîne, un n-uplet, une liste, un dictionnaire au travers des méthodes keys et items.
- Définition d'une fonction def f(x1.....x), return.
- Exceptions : lever une exception avec raise, la rattraper avec try/except.
Programmation objet
[modifier | modifier le wikicode]- Classe, constructeur (__init__ avec un premier argument self), attributs.
- Méthodes (avec un premier argument self).
- Encapsulation de données dans un objet.
- Application: construction de structures chaînées (cellules de listes) et arborescentes (noeuds d'arbres).
- Utilisation de None comme pointeur nul, comparaison avec is None. Encapsulation de la structure dans une autre classe.
- Héritage.
Divers
[modifier | modifier le wikicode]- Introduction d'un commentaire avec #.
- Utilisation simple de print, sans paramètre facultatif.
- Importation de modules avec import module ou import module as alias ou f rom module import f,g,...
Assertion
[modifier | modifier le wikicode]- assert