Go to file
Julien Palard 675d7b7778
CI: Naming steps.
2022-09-23 15:26:01 +02:00
.github/workflows CI: Naming steps. 2022-09-23 15:26:01 +02:00
culture-unix Culture Unix: Un exemple. 2021-10-18 16:53:00 +02:00
django-initiation Relecture 2021-09-24 15:00:15 +02:00
doddling Doddling around an exercise about energy. 2021-07-16 07:54:46 +02:00
drf-initiation add habit post 2021-11-15 15:58:34 +01:00
git-initiation Working on git initiation. 2022-09-23 15:08:02 +02:00
python-avance typo 2022-05-16 08:48:40 +02:00
python-initiation Bye bye setup.cfg. 2022-09-23 15:04:44 +02:00
python-perfs perfs: Working on it. 2022-09-23 15:05:20 +02:00
.gitignore Don't need to version .hypothesis. 2022-09-23 15:08:53 +02:00
LICENSE CC-BY. 2021-07-16 09:27:57 +02:00
README.md Fixed. 2022-05-16 08:48:32 +02:00
requirements.txt CI: Naming steps. 2022-09-23 15:26:01 +02:00

README.md

Python Introduction Slides

https://mdk.fr/python-initiation/

TODO

Notes

Les arguments par defaut conservés peuvent service de memoizer:

def fib(x, memo={}):
    ...

Aucune fonction n'est montée avant le 3, (à part des méthodes sur les types natifs).

Souci : Jour 1 pytest nécessite Jour 2 pip...

La suite du programme avancé

  • Packaging

  • cookiecutter : docs/, tests/, README, setup.cfg, setup.py, ...

  • Multiprocessing / Multithreading / Asyncio

  • IO Bound vs CPU Bound

  • Locks vs Queues

  • Code quality

  • import this, explicit is better

  • sémantique : les ternaires, les listes en compréhension, sont des expressions, elles doivent être utilisées comme des expressions, pas comme des instructions.

  • TDD

  • pas de print, logging FTW.

  • pas de "logging tiers", personne ne connaît, on reste sur logging.

  • -Xdev

  • black, ..., pass

  • pytest, doctest

  • pytest-cov

  • hypothesis

  • flake8

  • flake8-bugbear

  • tox

  • mypy

  • black

  • pdb, breakpoint()

  • EAFP, LBYL

  • Performance

  • Les types natifs : Leur complexité algorithmique

  • Cython

  • pypy

  • cffi

  • cprofile / pstats

  • Libs

  • re

  • argparse

  • pathlib

  • logging

  • numpy

  • jupyter

Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution 4.0 International.