Python¶
Liens¶
Installation de python¶
Windows¶
Unix¶
deadsnakes, un repo linux pour les versions de python
mise en place du repo:
$ sudo add-apt-repository ppa:deadsnakes/ppa
configuration des alias:
$ sudo apt install python3-pip python-is-python3
Installation d’une version de python:
$ sudo apt install python3.X python3.X-distutils python3.X-dev
pour changer la version de python par défaut:
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.X 1 $ sudo update-alternatives --config python
pyenv, un outils de management des versions de pythons:
Installation d’une version de python:
$ pyenv install 3.X
configuration global
$ pyenv global 3.X
configuration local
$ pyenv local 3.X
Dependencies et Venv manager¶
Packaging¶
Test¶
Pytest: Test unitaire
Hypothesis: Génération de donnée
Behave: Behavior Driven Development
Qualité de code¶
Outils¶
tox: Automotisation
Nox: Automatisation
Commitizen: gestion des commits et des tags selon le Convential Commit
Cookiecutter: Génération de projet par template
Cruft: sur couche a CookieCutter pour géré les montés de version de template
Jupyter: Environnement intéractif et reproductible
Documentation¶
Sphinx: générateur de Documentation
Furo: Theme Sphinx
Mkdocs & Mkdocstring: generateur de documentation
Mkdocs-material: theme Mkdocs
Développement Web¶
FastApi: Framework WEB Asynchrone pour la réalisation d’API REST
Django: Framework dévelopment WEB
Django-Ninja: Extension django pour le rendre plus moderne
Web Server¶
GraphQL¶
Command line interface¶
Click: Pour la création de CLI
Typer: Pour la création de CLI, build autour de click
Click-completion: pour l’autocompletion avec click
Base de donnée¶
SqlAlchemy: ORM
SqlModel: Wrapper autour de sqlalchemy et pydantic
Alembic: Gestion de migration pour SQLAlchemy/SQLModel
Data¶
Machine learning¶
Scikit-learn: librairie de machine learning
Pytorch: framework deeplearning
Keras: framework deeplearning
Tensorflow: framework deeplearning