A propos de ce Tutoriel.

 

J'ai décidé de faire mon travail de diplôme sur le langage Python car l'étude d'un langage de haut niveau et qui introduit la programmation orientée objet m'a permis de compléter une base en programmation faite sur des langages de plus bas niveau (Assembleur et langage C).
 

Ce tutoriel est destiné à toutes les personnes qui ont déjà une connaissance suffisante en programmation fonctionnelle pour comprendre les mécanismes simples de sélection et d'itération.

Il s'adresse aussi aux personnes qui veulent apprendre un langage de programmation de haut niveau, qui permet d'introduire relativement simplement et sans obligation la programmation orientée objet, et qui par la richesse de ses librairies donne la possibilité de développer rapidement des utilitaires.
 

Ce tutoriel à été conçu pour donner un avant goût du langage de programmation Python. Il traite les éléments tels que les types intrinsèques, les instructions et les expressions du langage Python avec leurs utilisations de base. Il introduit aussi la base de la programmation orientée objet et le traitement des exceptions. Chaque partie traitant d'un objet, expression ou instruction est suivi d'un exemple simple qui montre les propriétés de l'objet en question.
 

Les exemples en code Python sont écrits en italiques, et lorsque un exemple à été créé avec l'invité interactif, il est précédé de >>> où bien ... !
 

Remerciements.

Mes remerciements pour une aide sans faille à Madame Catherine Rochat et à Messieurs Jacques Finger, Georges Zünd, Fabien Verdan, Cédric Schöpfer, Julien Pernet....!!
 

Le langage Python.
 

Python est un langage de programmation à typage dynamique qui à été développé en 1989 par Guido Van Rossum et de nombreux bénévoles.

Les points forts de Python, sont qu'il est portable, dynamique, extensible et gratuit (General Public License), et qu'il permet une approche modulaire orientée objet, sans pour autant que cela soit obligatoire.
 
 

Portable ?
 

Python est non seulement portable entre les différentes variantes d'Unix, mais aussi sur les OS propriétaires comme MacOS, BeOS, MS-DOS et les différentes variantes de Windows.
 

Gratuit ?
 

L'interpréteur Python est gratuit pour tous les OS. En effet Python est placé sous GPL.
 

Extensible ?
 

Python a déjà une multitude de librairies et de modules par défaut. Certains sont multi-plateformes et d'autres pas. De plus, il est toujours possible d'en développer pour ses propres besoins.
 

Les Caractéristiques de Python.
 

La syntaxe de Python est très simple et, combinée avec des types de donnée évolués (listes, dico,...), conduit à des programmes à la fois compacts et lisibles.
 

Il gère par lui-même ses ressources (mémoires, descripteurs de fichier,...).
 

Il intègre comme Java un système d'exceptions, qui permet de simplifier la gestion des erreurs.
 

Il est orienté objet (sans que cela soit obligatoire). Il supporte l'héritage multiple et la surcharge des opérateurs.
 

Il est extensible. On peut facilement l'interfacer avec des librairies C existantes. On peut aussi s'en servir comme d'un langage d'extension pour des systèmes logiciels complexes.
 

La librairie standard de Python, et les paquetages inclus, donnent accès à une grande variété de services : chaînes de caractères et expressions régulières, services UNIX standard (fichiers, pipes, signaux, sockets, threads...), protocoles Internet (Web, News, FTP, CGI, HTML...), persistances et bases de données, interfaces graphiques (Tcl/Tk).
 

Python est un langage qui continue à évoluer, soutenu par une communauté d'utilisateurs enthousiastes et responsables, dont la plupart sont des supporters du logiciel libre.
 

Comparaison des langages !
 

Python fait partie des langages de script tel que Perl, Tcl, Rexx, alors que Java, C++ et C sont des langages qui nécessitent une compilation.
 

Les langages de script sont plus rapides au développement que les autres. Les programmes comportent moins de lignes (environ 50 % de moins), par contre leur vitesse d'exécution est plus lente.

La place mémoire prise par les langages de script et Java lors de l'exécution d'un programme est plus grande qu'en C / C++.
 

Python se situe dans les langages de script rapide, qui utilisent peu de place mémoire (environ la même chose que le C).

La durée de travail pour écrire un programme en Python se situe dans les plus bas (si ce n'est pas le plus bas), de plus la fiabilité du langage Python est proche du 100 % !!
 
 




Exécuter des programmes Python.
 
 

Il y a plusieurs façons d'exécuter un programme Python :
 

- Lancer l'invité interactif. Il est dès lors possible de taper le code au fur et à mesure. Une ligne de l'invité interactif commence toujours par les caractères : >>> où bien ... selon l'indentation.
 

- Créer un fichier comprenant du langage Python puis l'invité interactif de lancer la commande "import nom_du_fichier"(sans le .py) ce qui exécutera le code compris dans le fichier.
 

- De plus sur certain OS (Unix et Linux) il est aussi possible de créer un script avec sur la première ligne du fichier la commande "#! /usr/bin/python" (par exemple), cette méthode permet de lancer le programme python (il faut que le fichier soit exécutable).
 

- Python peut aussi se lancer depuis d'autres applications, mais je ne traite pas ce cas dans ce tutoriel.
 

- Sur la plupart des OS dits "user friendly" les programmes python se lancent en double-cliquant sur le fichier. Dans Windows les extensions .py sont automatiquement ouvertes avec Python, sur MacOS il faut d'abord faire un import et ensuite un .pyc est créé, ce programme en bytecode est alors automatiquement exécutable en cliquant dessus.
 

Lors de l'installation, Python règle les répertoires où il va chercher les modules et librairies. Il est cependant possible d'en rajouter, mais comme chaque OS a ses spécialité, il est préférable de lire la documentation propre à la version de Python. Nous verrons plus loin une fonction permettant à un programme de rechercher des modules dans de nouveaux répertoires.
 
 

Structure d'un programme en Python.
 

La structure et la syntaxe en Python ne sont pas très compliquées, cependant il est nécessaire de toujours suivre les règles de base !
 

Python ne nécessite pas de déclaration de type ; une variable est directement affectable par l'opérateur "=".
 

Un bloc de code en Python, par exemple une fonction, ne s'ouvre et ne se ferme pas avec un caractère (comme {} en C). En Python seul l'indentation de l'instruction indique à quel niveau elle se trouve. Il est très important de toujours garder la même indentation pour un bloc (en général 1 TAB).
 

En général les commentaires sont marqués par le caractère #, depuis ce caractère Python prend le reste de la ligne comme un commentaire. Il est aussi possible dans un fichier de marquer un commentaire avec des guillemets,( ceci permet un commentaire sur plusieurs lignes """....""").
 

Comme Python est un langage interprété, la lecture d'un fichier se fait de haut en bas. Il faut que les déclarations de fonctions, de variables et de classes se fassent avant leur première utilisation.
 

Il est possible de mettre plusieurs instructions sur la même ligne, si elles sont séparées par un point-virgule.
 

Un bloc doit forcément contenir une instruction, un « else »: sans rien générera une erreur.
 

Les instructions peuvent s'étendre sur plusieurs lignes si elles se trouvent dans une paire syntaxique, par exemple une paire de crochets. Une instruction peut aussi s'étendre sur plusieurs lignes si elle finit par un antislash.