Module In2Py-- Bases de la programmation en Python
Bienvenu(e) au cours d’introduction à python. Vous trouverez sur ce site toutes les informations et ressources nécessaires.
Ce cours vise à vous enseigner les bases de développement de logiciels professionnels dans le contexte de la science. Le matériel est destiné à être utilisé dans un cours universitaire (à tout niveau où le matériel semble approprié, en fonction de votre formation!), mais peut également être utilisé pour l’auto-apprentissage. Nous nous concentrons uniquement sur Python 3. Ce cours, à la fois minimaliste et pratique, vous permettra de découvrir rapidement les concepts essentiels de la programmation en Python. Il faut dire que ça vaut la peine de s’intéresser à Python, c’est un langage qui sera forcément présent dans l’écosystème informatique des années à venir.
Pour ce cours, des discussions LIVE! peuvent se faire sur . Vous pourrez toujours joindre la discussion et y poser vos questions, même quand le cours sera terminé. Pour ce faire, vous aurez besoin d’un compte GitHub.
Dans ce cours, nous allons voir les bases du langage Python. Au-delà de l’apprentissage de la syntaxe du langage Python, nous aborderons quelques bases d’algorithmie, c’est-à-dire comment transformer un problème énoncé en français, en une suite d’instructions informatiques.
L’apprentissage de la programmation est un processus nécessitant un certain investissement. Ainsi, nous vous conseillons de faire un maximum d’exercices sur une base régulière afin d’acquérir certains automatismes.
À la fin du cours, vous devriez être capable d’écrire des scripts et des notebooks Jupyter:
* Identifier les usages courants du langage
* Mettre en pratique le scripting en Python
* Structurer votre code en fonction, classes et modules
* Utiliser des modules existants
* Expérimenter la programmation objet en Python.
En outre, vous apprendrez également à utiliser des modules incontournables en analyse de données (pandas, numpy, matplotlib).
Les enseignements seront donnés sous forme de cours / TP, quelques minutes de théorie en live coding seront suivies d’une mise en pratique immédiate.
À titre indicatif, nous détaillons dans la suite le découpage des différentes séances. Ce découpage est succeptible de changer en fonction du degré d’avancement de l’ensemble de la classe. N’hésitez pas à revenir régulièrement sur cette page pendant la formation.
Votre permier ami sera certainement les cinq premières sections du tutoriel officiel de Python.
D’incroyables ressources peuvent également être trouvées à:
Si vous êtes un codeur débutant, vous pouvez consulter ces ressources d’apprentissage “Python pour les non-programmeurs”. Elles sont en Anglais.
Vous trouverez les cahiers virtuels pour ce cours sur ce dépôt GitHub.
Le langage de programmation Python est souvent utilisé dans les domaines scientifiques aujourd’hui. C’est un langage de programmation relativement accessible et adapté aux universitaires. Dans ce cahier virtuel d’exercices, nous vous présenterons le langage et apprendrons les basiques liés à l’algorithmique. Ce cours n’attend de vous aucun prérequis de programmation.
Les avantages de Python sont nombreux. D’une part c’est sans doute le langage de script le plus utilisé au monde car on peut quasiment tout faire avec: programmation web, statistiques, machine learning, gestion de bases de données. La communauté de Python est la plus grande dans le monde de la programmation: si vous voulez quelque chose, quelqu’un l’a sûrement déjà fait.
Programme : Introduction et prise en main du Jupyter.
Notions: 00. Introduction à python, 01. Variables et affectations, 02. Chaînes de caractères.
En complément du chapitre de présentation des bases du langage Python, vous pourrez également consulter avec profit les cinq premières sections du tutoriel officiel de Python.
Programme : listes, dictionnaires, tuples et sets, boucles et comparaisons, tests.
Notions: 03. Objets itérables ou conteneurs, 04. Contrôle du flux d’instructions.
Programme : fonctions, modules et paquets, programmation orientée objet.
Notions: 05. Fonctions, Modules et Packages, 06. Classes et POO.
En dehors de l’examen sur table que vous ferez, 40% de votre note finale proviendra des séances de TD/TP, d’une courte présentation (thèmes d’exposé) sur l’un des sujets ci-dessous et d’un petit projet de groupe.
Par ordre décroissant de priorité:
- Etude des expressions régulières
- Les modules et méthodes de gestion de fichiers sous Python
- Gestion des erreurs et des exceptions
Numpy
Matplotlib
Pandas
Seaborn
Scikit-Learn
- Les Tests en Python
- Le contrôle de version avec `Git`
SciPy
Sympy
URLLIB
BeautifulSoup
NLTK
Django
Markdown
dans un calepin JupyterLes ressources données ci-dessus peuvent être de très bonnes ressources et fournissent certainement de la docmentation nécessaire dans votre investigation sur les thèmes ci-dessus proposés.
Vous pouvez choisir votre thème d’exposé en allant ici.
Nous utiserons Python 3 dans notre cours. Les versions précédentes peuvent poser des problèmes. Il y’a deux versions de Python, la 2 et la 3. La 2 n’est plus maintenue depuis 2017, il vaut donc mieux se mettre directement à la 3 (on est actuellement à la version 3.10).
Pour installer Python localement, la distribution Anaconda est recommandée, ainsi que l’environnement Jupyter : https://www.anaconda.com/distribution/.
Il existe de nombreuses façons d’installer Python, une des meilleures est d’utiliser le package Anaconda. Nous vous conseillons donc d’installer la distribution Anaconda. Elle contient tous les modules et packages nécessaires pour ce cours. Elle est disponible pour toutes les plateformes et possède une procédure d’installation assez simple. Vous pouvez la télécharger depuis Continuum. Des détails pour l’installation peuvent être trouvés ici.
Cependant, vous pouvez emprunter une autre route, qui elle, se decompose en deux étapes:
1- Installer Python;
2- Installer Jupyter.
Pour installer Python, il suffit de télécharger la version 3 qui correspond à votre système d’exploitation (Windows ou Mac). Pour ce qui est des systèmes Linux, Python est généralement déjà installé par défaut. Il vous suffit d’ajouter Jupyter. Pour ce qui est de Jupyter, faites reference aux liens:
- http://jupyter.org/install.html
- http://jupyter.readthedocs.io/en/latest/install.html.
Pour cela, utilisez l’un des services suivants.
ATTENTION : Sachez que ces services fournissent des environnements temporaires : tout ce que vous faites sera supprimé au bout d’un moment, alors assurez-vous de télécharger toutes les données auxquelles vous tenez.
Recommandé : ouvrir ce dépôt en Colaboratory:
ou l’ouvrir dans Binder:
.
Chaque chapitre, entièrement contenu dans un notebook iPython (Jupyter), est directement accessible sur la plateforme Google Colab. Google Colab est une plateforme cloud entièrement gratuite, donnant un accès direct et facile à un une interface de programmation en Python (via des cahiers/calepins Jupyter) déjà correctement pré-configurée, et disposant de nombreuses librairies pré-installées. Accédez au sommaire. Ci-dessous, vous pouvez aller directement aux cahiers de cours dans Google Colab.
Les cahiers peuvent être aussi consultés sous forme de page web statique avec nbviewer. Dans cette configuration, aucun code ne pourra être exécuté. Les calepins sont lisibles ici, avec le visualiseur de bloc-notes de jupyter.org.
Parcourir cela, utilisez le visualiseur de bloc-notes de jupyter.org
Tous les contenus originaux sont sous licence CC BY-NC-SA 4.0, les ressources extérieures (comme bootstrap) sont sous leur licence respective .
Instructeur: Yaé Ulrich Gaba, yaeulrich.gaba@gmail.com