Le langage Python

INFOS DU JOUR :

1 - Objectifs :

Cette page a pour but de regrouper diverses ressources permettant une introduction au langage de programmation Python. On y trouve notamment : Le contenu de l'UE comporte trois éléments pédagogiques principaux :
  1. Les diaporamas (cf. Rubrique 4, ci-dessous) qui fournissent les notions théoriques
  2. Les exemples de programmes (cf. Rubrique 2) qui montrent ces notions théoriques mises en pratique dans un code informatique
  3. Les exercices de programmation (cf. Rubrique 2) qui permettent une réflexion et une pratique autonome par les étudiants
Pour accompagner ces ressources pédagogiques déjà disponibles, je vais créer des fichiers audio et/ou vidéo qui fournissent le discours oral qui vient habituellement accompagner ces ressources. Ces fichiers vont être mis à disposition sur ce site, au fur et à mesure de leur création. Un calendrier de lecture de ces fichiers sera proposé, ce qui vous permettra d'étudier les notions abordées, en amont d'un cours ou d'un TD.

De la même manière, le discours audio durant les sessions de questions/réponses, et les sessions de TD sera enregistré, édité pour enlever les séquences inutiles puis mis en ligne sur ce site, ce qui permettra aux étudiants non présents de le suivre à leur rythme, indépendamment de la performance de leur accès à internet et des déconnexions éventuelles pouvant se produire avec des sessions en streaming.

2 - Exemples, Exercices et Projets

3 - Contrôle des connaissances

Comme indiqué dans les modalités de contrôle des connaissances, la note finale de l'UE est composée pour 2/3 de la note obtenue lors de l'examen final et pour 1/3 de la note obtenue pour le projet. L'examen final aura lieu lors de la session de janvier. Le sujet se composera de deux ou trois exercices de programmation, similaires à ceux réalisés en TD. Les documents sont autorisés, mais en fait, vous n'aurez besoin que des exemples et des solutions des exercices vus en cours et en TD.

Les projets sont à réaliser en binôme. Quelques dérogations peuvent être accordées pour la réalisation d'un projet en monôme (notamment pour les étudiants qui ont déjà une très bonne maîtrise de la programmation), par contre les trinômes ne sont pas autorisés. Ces sujets sont tous à difficulté variable en fonction des éléments qui vous allez y intégrer, et une notation adaptée à cette difficulté sela utilisée. Cette notation portera dans une très large majorité sur la qualité du code (structuration, lisibilité, adéquation des structures de données et des algorithmes) et dans une moindre mesure sur les différentes fonctionnalités incluses dans le programme. En particulier, la structuration du code en classes bien choisies, ainsi qu'un bon usage des commentaires et des docstrings sur l'ensemble du programme seront des critères de notation très importants. Par conséquent, la note finale d'un projet avec peu de fonctionnalités mais bien conçu, peut largement dépasser celle d'un projet très fourni mais bâclé.

La présentation des projets se déroulera durant une séance spécifique durant la semaine XX et vous aurez jusqu'à la fin de la semaine XX pour constituer les binômes. Un compte mail spécifique est mis en place, destiné à tous les échanges liés aux projets: miashs.prog2@gmail.com (à utiliser impérativement). Afin de suivre le projet en cours de réalisation, les séances de TD à partir de la semaine du XXX seront consacrées au suivi du projet.

Comme expliqué lors de la séance de présentation des projets, chaque binôme devra envoyer des versions intermédiaires de son travail tous les 15 jours durant la période allouée au projet. Plus précisément, les dates limites pour l'envoi des deux versions intermédiaires correspondent à la fin des semaines XX et XX respectivement. La version finale sera envoyée au début de la semaine XX.

Tous les envois se feront par courrier électronique à l'adresse mail ci-dessus avec, en pièce-jointe, une archive ZIP ou RAR contenant l'ensemble des fichiers sources du programme ainsi qu'un fichier "readme.txt" qui résumera les travaux réalisés durant la quinzaine. Afin de permettre un classement efficace des versions successives du projet, le nom de l'archive devra impérativement être "nombinomeA+nombinomeB+N.zip" où 'N' représente le numéro de la version envoyée (donc 1, 2 ou 3). Pour simplifier, les deux patronymes des membres du binôme seront mis dans l'ordre alphabétique. Enfin, le sujet du message correspondant contiendra également le nom de cette archive. Comme la gestion de ces courriers électroniques utilise des filtres automatiques sur les messages, il est IMPERATIF de respecter scrupuleusement ces modalités. Le non-respect engendrera des points de pénalités sur la note finale.

La version finale devra contenir, en plus du code source, une courte (4 pages max) documentation du programme (impérativement au format PDF). Cette documentation ne doit pas faire double emploi avec le code source, mais au contraire, doit permettre de préciser des éléments additionnels (choix algorithmiques, limitations actuelles du projet, bilan chronologique de la réalisation, etc) qu'il vous semblera utile de communiquer pour mieux faire comprendre comment vous avez géré la réalisation de votre projet. Un message d'accusé de réception sera envoyé pour chaque version finale, n'hésitez pas à me relancer si vous n'avez pas eu de réponse après le XXX.

Enfin, une séance de démonstration des différents projets sera organisée en salle informatique durant la semaine d'examen début janvier (les horaires seront établis en fonction du calendrier des examens, dès qu'il sera diffusé). Il faut compter entre 10 et 15 minutes par binôme, selon le nombre de questions à poser. Un ordre de passage sera établi pour éviter les embouteillages.

4 - Ressources pédagogiques

5 - Installation et utilisation de l'environnement Python sous Windows

Après avoir téléchargé le fichier, "python-X.Y.Z.msi" (où X.Y.Z correspond au numéro de la version récupérée), un double-clic sur celui-ci permet de lancer l'installation de l'environnement Python sous Windows. A la fin de l'installation, il doit y avoir une nouvelle entrée "Python X.Y" dans le menu Démarrer.

L'environnement de programmation se lance alors en cliquant sur l'entrée "IDLE" de ce menu. La fenêtre suivante s'affiche :

Environnement IDLE - Fenêtre 
Shell

A partir de ce moment, on peut soit entrer des commandes Python directement dans la fenêtre "Python Shell", soit créer une fenêtre d'édition (raccourci clavier : Ctrl+N) pour saisir un programme complet :

Environnement IDLE - Fenêtre 
d'édition

A tout moment, un appui sur F5 permet d'exécuter le contenu de la fenêtre d'édition sélectionnée.
...
Christophe Schlick