|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- Ce fichier contient diverses notes utiles à la préparation des futurs cours.
-
- # Sujets à évoquer
-
- ## bits
- * class attributes vs instances attributes, @classmethod, properties
- *
- * dict: setdefault
- * listes: pop prend un argument
- * slices takes a step too [::-1] -> reverse
- * with: contextmanager, ContextDecorator
-
- ## big stuff
-
- * exceptions: try, catch, finally
- * short circuit in if: `if a is not None and a.b == 42`
- * files: "wa", accès séquentiel (chunk = file.read(chunk_size))
- * style: trailing white space, editor configuration,
- * [formatage de strings](fragments/format.md)
- * liste par compréhension et filtres
- * `help()`, doc en ligne (également en français)
-
- * modules et packages:
- * scripts vs modules
- * débugger avec l'interpréteur avec `import/relod()`.
- * `if __name__ == "__main__"`
-
- * décorateurs
- * classes
- * héritage
- * super()
- * Données binaires, encodage (binaire, ASCII, hexadécimal, unicode ...)
-
- * virtualenv, pip, et bibliothèques tierces
-
- * IDEs: don't use them ... yet (or ever)
- * linters,
- * déboguage
- * demo: pyflakes - black
-
- * tests: pytest, TDD
-
-
- # Idées d'ateliers
-
- Parser du RSS et télécharger les émissions:
-
- * Source: https://github.com/dmerejkowsky/pypodget/
- * Concepts:
- * `setup.py`
- * scripts, entry points
-
- * Remplacer Matlab par Python + numpy + matplotlib
- * Effets audio
- * Jeux vidéos (pygame)
- * IOT : micro-controller, Rasberry Pi
- * Blender/GIMP
- * Stéganographie: cacher un texte dans une image
-
- * Patcher des binaires Windows pour le fun?
|