選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
このリポジトリはアーカイブされています。 ファイルの閲覧とクローンは可能ですが、プッシュや、課題・プルリクエストのオープンはできません。

notes.md 1.7 KiB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. Ce fichier contient diverses notes utiles à la préparation des futurs cours.
  2. # Sujets à évoquer
  3. ## bits
  4. * scopes, closures, global, nonlocal
  5. * no overlaod in python
  6. * several __init__ ? Nope, alternative constructors
  7. * class attributes vs instances attributes, @classmethod, properties
  8. https://code-maven.com/slides/python-programming/class-methods-alternative-constructor
  9. * stable sorts
  10. * dict: setdefault
  11. * listes: pop prend un argument
  12. * slices takes a step too [::-1] -> reverse
  13. * with: contextmanager, ContextDecorator
  14. * short circuit in if: `if a is not None and a.b == 42`
  15. ## big stuff
  16. * exceptions: try, catch, finally
  17. * files: "wa", accès séquentiel (chunk = file.read(chunk_size))
  18. * style: trailing white space, editor configuration,
  19. * [formatage de strings](fragments/format.md)
  20. * liste par compréhension et filtres
  21. * `help()`, doc en ligne (également en français)
  22. * packages, libraries tierces
  23. * requests, HTTP protocol (headers, methodes, urls, anchors, links ...)
  24. * décorateurs
  25. * classes
  26. * héritage
  27. * super()
  28. * Données binaires, encodage (binaire, ASCII, hexadécimal, unicode ...)
  29. * virtualenv, pip, et bibliothèques tierces
  30. * IDEs: don't use them ... yet (or ever)
  31. * linters,
  32. * déboguage
  33. * demo: pyflakes - black
  34. * tests: pytest, TDD
  35. # Idées d'ateliers
  36. Parser du RSS et télécharger les émissions:
  37. * Source: https://github.com/dmerejkowsky/pypodget/
  38. * Concepts:
  39. * `setup.py`
  40. * scripts, entry points
  41. * Remplacer Matlab par Python + numpy + matplotlib
  42. * Effets audio
  43. * Jeux vidéos (pygame)
  44. * IOT : micro-controller, Rasberry Pi
  45. * Blender/GIMP
  46. * Stéganographie: cacher un texte dans une image
  47. * Patcher des binaires Windows pour le fun?