Depuis sa création en 1989, à partir de l'expérience tirée du langage ABC pour l'enseignement, le langage de
programmation Python s'est lentement et très largement diffusé dans de nombreuses communautés de
développeurs (calcul, graphisme 2D ou 3D, pilotage d'expériences, scripting d'automatisation de tâches, glue
entre outils, interfaces utilisateur…). Il a d'ailleurs été sélectionné pour l'enseignement de l'algorithmique dans
les lycées et classes préparatoires.
Ce langage, fortement et dynamiquement typé, basé sur un fonctionnement objet mais permettant d'écrire aussi
du code procédural, utilise dans sa version courante (CPython) une compilation à la volée du code source vers du
code machine virtuelle, qui permet au langage d'être disponible sur de nombreuses plates-formes.
Le fonctionnement du langage, avec son interpréteur pour la machine virtuelle ainsi que ses nombreuses
bibliothèques (Python est livré « batteries included »), écrits pour partie en langage C, permet de facilement
intégrer du code existant dans un programme Python, que cela soit en liaison directe ou bien par des éléments de
communication inter-processus.
L'organisation interne à l'exécution, qui autorise l'introspection (découverte et manipulation à l'exécution de tous
les éléments : données, classes, fonctions…) offre beaucoup de souplesse et permet de créer des outils
spécifiques dédiés.
Les outils tiers disponibles par ailleurs sur l'internet élargissent la gamme d'application du langage à de
nombreux domaines et expliquent la croissance régulière de son utilisation, entre autre dans les mondes des
sciences et de l'ingénierie.
Ce séminaire présentera Python dans sa version 3 (sortie fin 2008, qui continue à cohabiter avec Python 2), en
montrant des constructions typiques permises par le langage. Il ouvrira sur l'utilisation d'outils permettant
d’interagir avec des librairies en langage C, et s'orientera ensuite suivant les questions du public.
Le public concerné sait déjà programmer avec un langage procédural (C, Pascal).