Logo Python Scientifique

Formation Python Scientifique

Le langage Python s’est considérablement diffusé au sein de nombreuses entités ces dernières années, qu’elles soient publiques ou privées. Cette diffusion est due en premier lieu à son utilisation libre et gratuite, mais aussi du fait de la grande versatilité de ce langage de programmation qui peut servir dans de nombreux domaines différents. Dans cette formation nous nous concentrerons sur les apports que le langage Python peut avoir sur le calcul scientifique. Outre son aspect gratuit par rapport à son principal concurrent Matlab, le langage Python scientifique bénéficie aussi d’une communauté active, qui développe rapidement et avec grande qualité dans des librairies de code proprement maintenues les dernières mises à jour méthodologiques sur un grand nombre de sujets scientifiques. Ainsi la première journée est dédiée à introduire le langage et son écosystème, ainsi que les bases syntaxiques. La deuxième journée est découpée en une première partie détaillant le concept de module et package pour permettre de faire grossir les projets de développement, et une seconde partie qui introduit les packages principaux pour faire du développement scientifique. Enfin la troisième journée a pour objectif de mettre en pratique les notions acquises en s’assurant d’adopter de bonnes pratiques pour obtenir un code réutilisable par l’ensemble des collaborateurs. En intra-entreprise, cette formation peut être adaptée pour répondre à des besoins plus spécifiques, que ce soit l’approfondissement des notions de bases ici traitées rapidement, ou pour plonger plus précisément dans certaines librairies particulières de Python (Scipy, scikit-learn, Tensorflow...)

Objectifs pédagogiques / Compétences visées

  • Connaître l’écosystème Python et le mettre en place
  • Les bases de la programmation en Python
  • Les modules scientifiques de Python
  • Les bonnes pratiques pour un code réutilisable

Pré-requis

  • Bases de programmation (boucles, conditions, fonctions, ...)
  • Connaissances mathématiques basiques en algèbre linéaire et traitement du signal
  • Expérience du développement informatique scientifique et de ses enjeux

Public

  • Développeurs
  • Chefs de projets

Programme

Jour 1

Introduction

  • Histoire du langage Python
  • Ecosystème de Python
  • Mise en place pour développer en Python scientifique (nécessite les droits administrateurs)

Bases de Python

  • Les principaux opérateurs
  • Les conditions
  • Les fonctions
  • Les concepts avancés

Jour 2

Du script au package

  • Les modules Python
  • Différence module / package
  • Créer son premier package

Ecosystème de Python scientifique

  • Principales librairies et leur utilité
  • Bonnes pratiques pour évaluer la maturité d’une librairie
  • Mise en pratique sur Spyder

Jour 3

Résolution d’un problème pratique en équipe avec utilisation de Jupyter Lab

  • Introduction à JupyterLab
  • Définition du problème technique à traiter
  • Bonnes pratiques de recherche dans la documentation
  • Génération de la solution sous forme de Jupyter Notebook
  • Test de la solution proposée par un autre membre de l’équipe

Documenter son code

  • Bonne pratiques de documentation et conventions
  • Ecrire du code en markdown
  • Présentation du package Sphinx

Moyens pédagogiques et techniques

  • Formateur validé par nos équipes techniques et pédagogiques
  • Salle de formation informatisée
  • Support de cours numérique

Suivi et appréciation des résultats

  • Questions orales ou écrites (QCM)
  • Exercices pratiques
  • Formulaires d'évaluation
Dernière modification le 28/06/2022