Passer au contenu de cette vue

          Table des matières

Les liens de chaque séquence ou unité vous renvoient directement dans le cours au bon endroit pour les semaines ouvertes. Pour les autres semaines, il faudra attendre leurs ouvertures pour que les liens fonctionnent

Présentation générale du cours

- Présentation, calendrier et évaluation du cours
- Modes d'emploi - conditions d'utilisation
QUESTIONNAIRE : VOS ATTENTES ET MOTIVATIONS  

Semaine 1 : Introduction au MOOC et aux outils Python

 
1. Organisation du MOOC

- Vidéo - Organisation du MOOC 
- Complément - Attestation
Complément - Version de python
- Forum Organisation du MOOC

2. Pourquoi Python ?

- Vidéo - Pourquoi Python ?
- Complément - Installer la distribution standard Python
Complément - Un peu de lecture
- Forum - Pourquoi Python ? 

3. Interpréteur et IDLE - Vidéo - Interpréteur et IDLE
- Forum - Interpréteur et IDLE
4. Les notebooks

Vidéo - Les notebooks
Complément - Utiliser les notebooks
Complément - Mode d'éxécution
Complément - suite de Fibonacci (1)
Complément - suite de Fibonacci (suite)
Complément - Ligne she bang
Exercice - dessiner un carré
Forum - Les notebooks

5. Notions de variables, d'objets et typage dynamique

Vidéo - Notions de variables, d'objets et de typage dynamique
Complément - Nom de variables
Complément - Les mots-clés de python
Complément - Un peu de calcul sur les types
Complément - Gestion de la mémoire
Complément - Typages statique et dynamique
Quiz 1 - Notions de variables, d'objets et de typages dynamiques
Forum Notions de variables, objets et typage dynamique

6. Les types numériques

 - Vidéo - Les typages numériques
 - Complément - Utiliser Python comme une calculette
 - Complément - Affectations & Opérations
 - Complément - Notions sur la précision des calculs flottants
 - Complément - Opérations bitwise
 - Exercice - Estimer le plus petit (grand) flottant
 - Quiz 2 - Les types numériques
 - Forum Les types numériques

Semaine 2 : Notions de base pour écrire son premier programme en Python

 
1. Codage, jeux de caractères et Unicode

Vidéo - Codage, jeux de caractères et Unicode
Complément - Caractères accentués
Quiz 3 
Forum - Codage, jeux de caractères et Unicode

2. Les chaînes de caractères Vidéo -Les chaînes de caractères
Complément - Les outils de base sur les strings
Complément - Formatage des chaînes
Complément - Obtenir une réponse de l'utilisateur
Complément - Expressions régulières et modules re
Quiz 4
Exercice - Expressions régulières
Forum - Les chaînes de caractères
3. Les séquences Vidéo - Les séquences
Complément - Les slices en python
Quiz 5
Forum - Les séquences

4. Les listes Vidéo - Les listes
Complément - Méthodes spécifiques aux listes
Complément - Objet mutables et objets immuables
Complément - Tris des listes 
Quiz 6
Forum - Les listes

5. Introduction aux tests if et à la syntaxe

Vidéo - Introduction aux tests if et à la syntaxe
Complément - Indentations en python
Complément - Bonnes pratiques de présentation de code
Complément - L'instruction pass
Quiz 7
Forum - Introduction aux tests if et à la syntaxe

6. Introduction aux boucles for et aux fonctions Vidéo - Introduction aux boucles for et aux fonctions
Complément - Fonction avec ou sans valeur de retour
Quiz 8
Exercice - les chaînes de caractères
Exercice - Séquences
Exercice - Listes
Exercice - Instruction if et fonction def
Forum - Introduction aux boucles for et aux fonctions
7. Introduction aux compréhensions de listes

Vidéo - Introduction aux compréhensions des listes
Quiz 9
Exercice - Les boucles for
- Exercice - Compréhensions
Forum - Introduction aux compréhensions de listes

8. Introduction aux modules

Vidéo - Introduction aux modules
Quiz 10
Forum - Introductions aux modules

Semaine 3. Renforcement des notions de base, références partagées

 
1. Les fichiers Vidéo - Les fichiers
Complément - Les fichiers
Complément - Fichiers et utilitaires
Complément - Formats de fichier
Complément - Fichiers systèmes
Quiz 11
Forum - Les fichiers 
2. Les tuples Vidéo - Les tuples
Complément - La construction de tuples
Complément - Séquence unpacking
Complément - Plusieurs variables dans une boucle for
Quiz 12
Exercice - Fichiers
Exercice - Unpacking
Forum - Les tuples
3. Tables de hash Vidéo - Tables de hash
Quiz 13 - Tables de hash
Forum - Tables de hash
4. Les dictionnaires

- Vidéo - Les dictionnaires
Complément - Dictionnaires
Complément - Clés immuables
Complément - Gérer des enregistrements
Quiz 14
Exercice - Dictionnaire
Exercice - Fusionner des données
Forum - Les dictionnaires

5. Les ensembles Vidéo - Les ensembles
Complément - Ensembles
Quiz 15
Exercice - Ensemble (1)
Exercice - Ensemble (2)
Forum - Les ensembles
6. Les exceptions Vidéo - Les exceptions
Complément - Try...else...finally
Quiz 16
Forum - Les exceptions
7. Les références partagées

Vidéo - Les références partagées
Complément - L'opérateur is
Complément - Listes infinies et références circulaires
Complément - Les différentes copies
Complément - L'instruction del
Complément - Affectation simultanée
Complément - Les instructions+= et autres 
Quiz 17
Forum - Les références partagées

8. Introduction aux classes - Vidéo - Introduction aux classes 
Quiz 18
Exercice - FIFO
Forum - Introduction aux classes

Semaine 4. Fonctions et portée des variables

 
1. Fonctions Vidéo - Fonction
Complément - Passage d'arguments par référence
Complément - Rappels sur docstring
Complément - isinstance
Complément - Type hints
Quiz 19
Forum Fonctions
2. Tests if/elif/else et opérateurs booléens Vidéo - Test if/elif/else et opérateurs booléens
Complément - Conditions & Expressions Booléennes
Complément - Évaluation des tests
Complément - Une forme alternative du if
Complément - Récapitulatif sur les conditions dans un if
Quiz 20 
Exercice - L'instruction if
Exercice - Expression conditionnelle
Forum Tests if/elif/else et opérateurs booléens
3. Boucles while Vidéo - Boucle while
Complément - La boucle while
Quiz 21
Exercice - Calculer le PGCD
Exercice - Taxes
Forum Boucle while
4. Portée des variables - règle LEGB Vidéo - Portée des variables - règle LEGB
Complément - Le scope builtin
Complément - Visibilité des variables de boucle
Complément - L'exception UnboundLocalError
Quiz 22 
Forum Portée des variables - règle LEGB
5. Modification de la portée avec global et nonlocal Vidéo - Modification de la portée avec global et nonlocal
Complément - Les fonctions globals et locals
Quiz 23
Forum Modification de la portée avec global et nonlocal
6. Passage d'arguments et appel de fonctions Vidéo - Passage des arguments et appel de fonctions
Complément - Passage d'arguments
Complément - Un piège courant
Complément - Arguments keyword-only
Quiz 24
Exercice - Passage d'arguments
Forum Passage d'arguments et appel de fonctions

Semaine 5 : Itération, importation et espace de nommage

 
1. Itérable, itérateur, itération Vidéo - Itérable, itérateur, itération
Complément -Les instructions break et continue
Complément - Une limite de la boucle for
Complément - Itérateurs
Quiz 25
Forum Itérable, itérateur, itération
2. Objet fonction, fonction lambda, map et filter Vidéo - Objet fonction, fonction lambda, map et filter
Complément - Programmation fonctionnelle
Complément - Tri de listes : deuxième partie
Quiz 26
Exercice - Tri de plusieurs listes
Exercice - Manipulation de fonctions
Exercice - Comparaison de fonctions
Forum Objet fonction, fonction lambda, map et filter
3. Compréhension de listes, sets et dictionnaires Vidéo - Compréhension des listes, sets et dictionnaires
Complément - Construction de liste par compréhension
Complément - Compréhensions imbriquées
Quiz 27 
Exercice - Compréhensions
Forum Compréhension de listes, sets et dictionnaires
4. Expressions et fonctions génératrices Vidéo - Expressions et fonctions génératrices
Complément - Expressions génératrices
Quiz 28
Exercice - Produit scalaire
Forum Expressions et fonctions génératrices
5. Modules et espaces de nommage Vidéo - Modules et espaces de nommage
Quiz 29
Forum Modules et espaces de nommage
6. Processus d'importation des modules Vidéo - Processus d'importation des modules
Complément - Précisions sur l'importation
Complément - Où sont cherchés les modules ?
Quiz 30
Forum Processus d'importation des modules
7. Importation des modules et espaces de nommage Vidéo - Importation des modules et des espaces de nommage
Complément - La clause import as
Complément - Récapitulatif sur import
Complément - La notion de package
Quiz 31
Exercice - Décoder le module this
Forum Importation des modules et espaces de nommage

Semaine 6 : Conception des classes

 
1. Classes, instances et méthodes Vidéo - Classes, instances et méthodes
Complément - Introduction aux classes
Complément - Enregistrements et instances
Complément - Les property
Complément - Un exemple de classes de la librairie standard
Quiz 32 
Forum Classes, instances et méthodes
2. Méthodes spéciales Vidéo - Méthodes spéciales 
Complément - Instance hashable
Complément - Surcharge d'opérateurs (1)
Complément - Méthodes spéciales (2/3)
Complément - Méthodes spéciales (3/3)
Quiz 33
Forum Méthodes spéciales
3. Héritage Vidéo - Héritage
Complément - Héritage
Complément - Hériter des types builtin
Complément - Enumérations
Complément - Héritage, typage
Quiz 34
Forum Héritage
4. Héritage multiple et ordre de résolution des attributs Vidéo - Héritage multiple et ordre de résolution des attributs
Complément - Héritage multiple
Quiz 35
Forum Héritage multiple et ordre de résolution des attributs
5. Variables et attributs Vidéo - Variables et attributs
Complément -  Les attributs
Complément - Espace de nommage
Quiz 36
Forum Variables et attributs
6. Conception d'itérateurs Vidéo - Conception d'itérateurs 
Complément - Implémenter un itérateur de permutations
Quiz 37
Forum Conception d'itérateurs 
7. Conception d'exceptions personnalisées Vidéo - Conception d'exceptions généralisés
Quiz 38
Forum Conception d'exceptions personnalisés
8. Conception de context manager Vidéo - Conception de context manager
Complément -Context manager et exceptions
Quiz 39
Exercice - Utilisation des classes
Forum Conception de context manager
Questionnaire fin du tronc commun Mention CNIL
Questionnaire

Semaine 7 : L'écosystème data science Python

 
1. Introduction, survol des différents outils Vidéo - Introduction, survol des différents outils
Complément - Installations supplémentaires
Forum Introduction, survol des différents outils
2. numpy Introduction - Numpy
Complément - numpy en dimension 1
Complément - Type d'un tableau numpy
Complément - Forme d'un tableau numpy
Complément - Création de tableaux
Complément - Le broadcasting
Complément - Indexes et slices
Complément - Opérations logiques
Complément - Algèbre linéaire
Complément - Indexation évoluée
Complément - Divers
Forum numpy
3. pandas Complément - La data science en général et en Python en particulier
Complément - Séries en pandas
Complément - DataFrame en pandas
Complément - Opération avancées en pandas
Forum pandas
4. matplotlib Complément - matplotlib
Complément - Autres librairies
Complément - Notebooks interactifs
Forum matplotlib

Semaine 8. Programmation asynchrone - asyncio

1. Programmation asynchrone Vidéo - Programmation asynchrone
Forum Programmation asynchrone
2. Quelques exemples simples Vidéo - Quelques exemples simples
Forum Quelques exemples simples
3. asyncio : historique et écosystème Vidéo - asyncio : historique et écosystème
Forum asyncio : historique et écosystème
4. Extensions asynchrones du langage Vidéo - Extensions asynchrones du langage
Forum Extensions asynchrones du langage
5. Coroutines et awaitables Vidéo - Coroutines  et awaitables
Forum Coroutines et awaitables
6. Boucles d'événements Vidéo - Boucles d'événements 
Forum Boucles d'événements
7. Tâches et exceptions Vidéo - Tâches et exceptions
Forum Tâches et exceptions
8. La librairie asyncio Vidéo - la librairie asyncio
Complément - un exemple simple
Forum - La librairie asyncio 
9. Bonnes pratiques Vidéo - Bonnes pratiques
Forum Bonnes pratiques

Semaine 9: Sujets avancés

1. Méthodes statiques et de classe Vidéo - Méthodes statiques et de classe
Forum Méthodes statiques et de classe
2. Les décorateurs Vidéo - Les décorateurs 
Complément - Décorateurs
Forum Les décorateurs
3. Les clôtures de fonctions Vidéo - Les clôtures de fonctions
Forum Les clôtures de fonction
4. Les métaclasses Vidéo - Les métaclasses
Forum Les métaclasses
5. property et descripteurs Vidéo - Property et descripteurs
Forum property et descripteurs
6. Protocole d'accès aux attributs Vidéo - Protocole d'accès aux attributs
Forum Protocoles d'accès aux attributs