Python par la pratique - Niveau 1

  • Stage
  •   Actions régionales
  •   Informatique
  •    LEGOUT Arnaud

Objectifs

Appréhender les bases du langage Python (types simples et avancés, syntaxe, fonctions), disposer d'une bonne vue d'ensemble des différents modules et faire ses premiers pas en programmation orientée objet.

Public

Chercheurs et ingénieurs et techniciens

Les agents non CNRS doivent demander au préalable l’accord de leur employeur pour la prise en charge financière (entre 300 € à 500 € € HT selon le nombre de participants)

Pré-requis

Avoir déjà des connaissances en programmation impérative ou fonctionnelle (C, C++, Java, Fortran, matlab, Perl, PHP, Lisp, etc.).
Aucune connaissance préalable en Python n’est nécessaire.

Programme

PREMIÈRE PARTIE : SESSION VIDÉO
Dans la première partie, les apprenants auront accès à des vidéos de formation leur permettant d’acquérir les bases de la syntaxe Python. Chaque apprenant peut suivre à son rythme ces vidéos, mais on recommande de suivre cette première partie sur deux demi-journées au maximum deux semaines avant la formation présentielle. Il est très important de faire cette première partie pour que tout le monde démarre sur les mêmes bases la formation présentielle. Par contre, nous reviendrons durant la formation présentielle sur toutes les difficultés et nous répondrons aux questions des apprenants. Le programme couvert durant cette première partie est le suivant.

1/ Types de base
Description des types de base : numériques (int, long, float, complex, bool), séquences (list, str, tuple, etc.), set, dict. Description de la manipulation de tous les types de base, introduction de la notion de types mutables et immuables. Présentation du typage dynamique, des références partagées.

2/ Syntaxe et instructions
Présentation des structures conditionnelles if elif else, des boucles for, des itérateurs, des boucles for avancées.

DEUXIÈME PARTIE : FORMATION PRÉSENTIELLE
Dans la deuxième partie, les apprenants suivront une formation présentielle. On reviendra sur les difficultés rencontrées dans la première partie, et nous continuerons avec un programme couvrant tous les aspects de la programmation Python. Chaque notion sera suivie d’une mise en application. Nous verrons en particulier les notions suivantes.

1/ Fonctions
Présentation de la déclaration des fonctions et du polymorphisme. Étude de la notion de portée des variables. Notions avancés sur les fonctions (déclaration d'arguments nommés, par défaut, quelconques, etc.) Introduction des fonctions lambda et des fonctions de manipulation de séquences (map(), filter(), reduce()). Présentation de la compréhension de listes, de dictionnaires et de sets. Présentation des fonctions et expressions générateurs.

2/ Modules
Présentation des notions d'espace de nommage. Présentation de la création et importation de modules. Introduction de la notion de packages.

3/ Classes
Introduction à la programmation orienté objet en Python. Présentation des notions de classes et instances. Étude de notions avancées d'espace de nommage entre modules et classes. Présentation de l'héritage de la notion de méthodes. Présentation de la surcharge d'opérateurs.

4/ Exceptions
Présentation de la gestion des exceptions en Python et des context manager.

Méthodes pédagogiques

1 journée pour la première partie (session vidéo)
3 jours pour la deuxième partie (formation présentielle)

Sessions passées 3

Lundi 14 Mai 2018
Mercredi 13 Mars 2019
Mercredi 25 Septembre 2019

Partenaires

CNRS

Informations pratiques

Formation DR20 CNRS
250 RUE ALBERT EINSTEIN - BÂTIMENT 3
06 905 SOPHIA ANTIPOLIS CEDEX
  04 92 96 03 39