Logo ÉTS
Session
Cours
Responsable(s)

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement





Cours

Sem Cours Contenu Exercices

1

Introduction

1 - Qu'est-ce que Python ?

Usage de Python sur des serveurs en ligne

2 - Pourquoi Python ?
3 - Python en ligne
4 - Notions de performance

Notions de base
Spécificités de Python

1 - Syntaxe de base

Exercices d’application directe sur des serveurs

2 - Opérateurs
3 - Types de base
4 - Listes et tuple
5 - Chaînes de caractères
6 - Ensembles
7 – Dictionnaires
8 - Modes de transmission

2

Scriptage

1 – Définition d’un script Python et sa structure

Exercices de tests et recherche

2 – Conditions et boucles
3 – Utilisation de liste avancées

Environnement de travail pour Python

1 – Librairies python, installation et environnement de développement

Installation de python sur les ordinateurs des étudiants.

2 - Personalisation de l’environnement dans PyCharms
3 – La console Python, iPython et Jupyter Notebook

3

Utilisation de Git
Pour la gestion des sources

1 - Notions de base : copie local, dépôt

Exercices interactif en groupe sur des dépôts individuels et communs

2 – Organisation des branches et dépôt en ligne : fork, clone, branch, github
3 – Mise à jour : commit, pull, push
4 – Synchronisation : branch, pull request, merge, conflict
5 – Historique et gestion : stash, rebase, reset, revert

Programmation procédurale

1 - Fonctions

Exercices de base
Améliorer un script grace à des fonctions
Utilisation du debboguer dans PyCharm

2 – Structurer le code en fonctions
3 - Passage de paramètres, arguments optionnels
4 – Debugging: pdb dans PyCharms

4

Mini Projet A

1 – Présentation du mini-projet

Période de disponibilité pour le mini-projet A

2 – Présentation des requis (fonction) du programme et du rendu avec Git

5

Programmation scientifique

1 – Notions de performance

Exercices d’utilisation de numpy, vectorisation de code

2 – Introduction à Numpy : création de tableaux, indexation
3 – Numpy : calculs mathématiques
4 – Numpy : recherche, filtrage, sélection de données

6

Mini Projet B

1 – Présentation du mini-projet et des données

Période de disponibilité pour le mini-projet B

2 – Présentation des requis (fonctions+classes) du programme et du rendu avec Git
3- Période dédiée à l'avancement du projet

7

Programmation orientée object

1 - Introduction à la programmation objet : concept et intérêt

Exercice d’application directe pour transformer un script en classe

2 – Classes et Objects
3 – Interfaces
4 – IO d’instance avec Pickle

8

Projet de session Présentation des projets, requis, rapports … Création des équipes et brainstorming

Analyses de données

1 - Introduction à Matplotlib

Exercices de tracé de courbes, chargement de données, statistiques et fouille dans les fichiers

2 - Traitement de fichiers
3 - Introduction à Pandas
4 – Manipulation avancées de données statistiques
5 - RegEx

9

Analyses de données

1 – Introduction à Scipy

Résolution de problèmes non-linéaires, représentations de solutions

2 - Résolution d'équations
3 - Optimisation
4 - Interpolation
5 - Intégration
Projet de session Suivi projets Vérification de l'avancement des équipes

10

Documentation de code

1 – Recommendations pour commentaires

Documentation du mini-projet B, convertir son projet B en module et mise en ligne (partage)

2 – Sphinx, Doxygen

Modules

1 – Qu’est qu’un module
2 – Comment créer un module et diffuser son module
3 – Utilisation de pypi and pip
4 – Environnements virtuels
Projet de session Suivi projets Vérification de l'avancement des équipes
11 Projet de session Période dédiée à l'avancement du projet Période de disponibilité pour les projets spéciaux
12 Projet de session Période dédiée à l'avancement du projet Période de disponibilité pour les projets spéciaux
13 Projet de session Présentations finales Remise des rapports
 

Laboratoires et travaux pratiques

Les séances de laboratoires (mini-projets et projet de session) ont lieu pendant la période régulière du cours.