0% ont trouvé ce document utile (0 vote)
2 vues19 pages

Résumé Module 1 Python

Le module présente les bases de la programmation en Python, y compris la mise en place de l'environnement de programmation, la compilation et l'interprétation. Python est un langage interprété, facile à apprendre et à utiliser, qui a été créé par Guido van Rossum comme un projet de loisir. Ses objectifs incluent la simplicité, l'ouverture et la lisibilité, ce qui en fait un langage populaire parmi les programmeurs.

Transféré par

hassanachiwac
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
2 vues19 pages

Résumé Module 1 Python

Le module présente les bases de la programmation en Python, y compris la mise en place de l'environnement de programmation, la compilation et l'interprétation. Python est un langage interprété, facile à apprendre et à utiliser, qui a été créé par Guido van Rossum comme un projet de loisir. Ses objectifs incluent la simplicité, l'ouverture et la lisibilité, ce qui en fait un langage populaire parmi les programmeurs.

Transféré par

hassanachiwac
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Module 1 : L'essentiel de la programmation en Python

Abdelhak Rahmani
Formateur animateur au CDC Digital
Dans ce module, vous en apprendrez davantage sur :

 Les bases de la programmation informatique ;


 La mise en place de votre environnement de programmation ;
 Compilation ou interprétation ;
 Introduction à Python.

Comment fonctionne un programme informatique ?


Ce cours a pour but de vous montrer ce qu'est le langage Python et à quoi il sert. Commençons par
les bases absolues.

Un programme rend un ordinateur utilisable. Sans programme, un ordinateur, même le plus


puissant, n'est rien d'autre qu'un objet. De même, sans joueur, un piano n'est rien d'autre qu'une
boîte en bois.

Les ordinateurs sont capables d'effectuer des tâches très complexes, mais cette capacité n'est pas
innée. La nature d'un ordinateur est tout à fait différente.

Il ne peut exécuter que des opérations extrêmement simples, par exemple, un ordinateur ne peut
pas évaluer la valeur d'une fonction mathématique compliquée par lui-même, bien que cela ne soit
pas au-delà du domaine du possible dans un avenir proche.

Les ordinateurs contemporains ne peuvent qu'évaluer les résultats d'opérations très fondamentales,
comme l'addition ou la division, mais ils peuvent le faire très rapidement, et peuvent répéter ces
actions pratiquement autant de fois que nécessaire.

Imaginez que vous vouliez connaître la vitesse moyenne que vous avez atteinte au cours d'un long
voyage. Vous connaissez la distance, vous connaissez le temps, vous avez besoin de la vitesse.

Naturellement, l'ordinateur sera capable de calculer cela, mais l'ordinateur n'est pas conscient de
choses telles que la distance, la vitesse ou le temps. Il est donc nécessaire de donner des instructions
à l'ordinateur pour qu'il le fasse :

 Accepter un nombre représentant la distance ;


 Accepter un nombre représentant la durée du voyage ;
 Diviser la première valeur par la seconde et stocker le résultat dans la mémoire ;
 Afficher le résultat (représentant la vitesse moyenne) dans un format lisible.

Ces quatre actions simples forment un programme. Bien sûr, ces exemples ne sont pas formalisés et
sont très loin de ce que l'ordinateur peut comprendre, mais ils sont suffisamment bons pour être
traduits dans une langue que l'ordinateur peut accepter.

Le langage est le mot clé.

1
Langages naturels vs. Langages de programmation
Une langue est un moyen (et un outil) pour exprimer et enregistrer des pensées. Il existe de
nombreuses langues tout autour de nous. Certaines d'entre elles ne nécessitent ni parler ni écrire,
comme le langage corporel ; il est possible d'exprimer ses sentiments les plus profonds de manière
très précise sans dire un mot.

Une autre langue que vous utilisez chaque jour est votre langue maternelle, que vous utilisez pour
manifester votre volonté et pour réfléchir à la réalité. Les ordinateurs ont aussi leur propre langage,
appelé langage machine, qui est très rudimentaire.

Un ordinateur, même le plus sophistiqué techniquement, est dépourvu de toute intelligence. On


pourrait dire qu'il est comme un chien bien entraîné - il ne répond qu'à un ensemble prédéterminé
d'ordres connus.

Les commandes qu'il reconnaît sont très simples. Nous pouvons imaginer que l'ordinateur répond à
des ordres tels que "prenez ce nombre, divisez-le par un autre et enregistrez le résultat".

Un ensemble complet de commandes connues est appelé une liste d'instructions, parfois abrégée en
LI. Les différents types d'ordinateurs peuvent varier en fonction de la taille de leurs LI, et les
instructions peuvent être complètement différentes selon les modèles.

Remarque : les langages machines sont développés par l'homme.

Aucun ordinateur n'est actuellement capable de créer un nouveau langage. Cependant, cela pourrait
changer bientôt. D'autre part, les gens utilisent aussi un certain nombre de langues très différentes,
mais ces langues se sont développées naturellement. De plus, elles continuent d'évoluer.

De nouveaux mots sont créés chaque jour et les anciens mots disparaissent. Ces langues sont
appelées langues naturelles.

Qu'est-ce qui fait un langage ?


On peut dire que chaque langue (qu'elle soit mécanique ou naturelle, peu importe) est composée
des éléments suivants :

UN ALPHABET

Un ensemble de symboles utilisés pour construire les mots d'une certaine langue (par exemple,
l'alphabet latin pour l'anglais, l'alphabet cyrillique pour le russe, le kanji pour le japonais, etc.).

UN LEXIS

Chaque langage de programmation a son dictionnaire et vous devez le maîtriser ; heureusement, il


est beaucoup plus simple et plus petit que le dictionnaire de n'importe quel langage naturel ;

SYNTAXIQUEMENT

Chaque langue a ses règles et celles-ci doivent être respectées ;

SEMANTIQUEMENT

Le programme doit avoir un sens.

Malheureusement, un programmeur peut aussi faire des erreurs avec chacun des quatre sens
mentionnés ci-dessus. Chacun d'entre eux peut rendre le programme complètement inutile.

2
Supposons que vous ayez écrit un programme avec succès. Comment persuader l'ordinateur de
l’exécuter ? Vous devez traduire votre programme en langage machine. Heureusement, la traduction
peut être effectuée par l'ordinateur lui-même, ce qui rend le processus rapide et efficace.

Il existe deux façons différentes de transformer un programme d'un langage de programmation de


haut niveau en langage machine :

1- LA COMPILATION

Le programme source est traduit une fois (cependant, cet acte doit être répété chaque fois que vous
modifiez le code source) en obtenant un fichier (par exemple, un fichier .exe si le code est destiné à
être exécuté sous MS Windows) contenant le code machine ; vous pouvez maintenant distribuer le
fichier dans le monde entier ; le programme qui effectue cette traduction est appelé un compilateur
ou un traducteur ;

2- L’INTERPRETATION

Vous (ou tout utilisateur du code) pouvez traduire le programme source chaque fois qu'il doit être
exécuté ; le programme effectuant ce type de transformation est appelé un interprète, car il
interprète le code chaque fois qu'il doit être exécuté ; cela signifie également que vous ne pouvez
pas simplement distribuer le code source tel quel, car l'utilisateur final a également besoin de
l'interprète pour l'exécuter.

Pour des raisons très fondamentales, un langage de programmation de haut niveau particulier est
conçu pour entrer dans l'une de ces deux catégories.

Il y a très peu de langages qui peuvent être à la fois compilés et interprétés. Habituellement, un
langage de programmation est projeté avec ce facteur dans l'esprit de ses constructeurs - sera-t-il
compilé ou interprété ?

Que fait réellement l'interprète ?


Supposons encore une fois que vous ayez écrit un programme. Or, il existe sous la forme d'un fichier
informatique : un programme informatique est en fait un morceau de texte, de sorte que le code
source est généralement placé dans des fichiers texte. Remarque : il doit s'agir de texte pur, sans
aucune décoration comme des polices, des couleurs, des images intégrées ou d'autres supports
différents. Vous devez maintenant invoquer l'interpréteur et le laisser lire votre fichier source.

L'interpréteur lit le code source d'une manière qui est courante dans la culture occidentale : de haut
en bas et de gauche à droite. Il y a quelques exceptions - elles seront abordées plus tard dans le
cours.

Tout d'abord, l'interpréteur vérifie si toutes les lignes ultérieures sont correctes (en utilisant les
quatre aspects couverts précédemment).

Si le compilateur trouve une erreur, il termine son travail immédiatement. Dans ce cas, le seul
résultat est un message d'erreur. L'interpréteur vous indiquera où se trouve l'erreur et quelle en est
la cause. Toutefois, ces messages peuvent être trompeurs, car l'interpréteur n'est pas en mesure de
suivre vos intentions exactes et peut détecter les erreurs à une certaine distance de leurs causes
réelles.

Par exemple, si vous essayez d'utiliser une entité d'un nom inconnu, cela provoquera une erreur,
mais l'erreur sera découverte à l'endroit où on essaie d'utiliser l'entité, et non à l'endroit où le nom
de la nouvelle entité a été introduite.

3
En d'autres termes, la raison réelle est généralement située un peu plus tôt dans le code, par
exemple à l'endroit où vous avez dû informer l'interpréteur que vous alliez utiliser l'entité du nom.

Il est également possible qu'une partie importante du code soit exécutée avec succès avant que
l'interprète ne trouve une erreur. C'est un comportement normal dans ce modèle d'exécution.

Vous pouvez vous demander maintenant : qu'est-ce qui est le mieux ? Le modèle de "compilation"
ou le modèle d'"interprétation" ? Il n'y a pas de réponse évidente. S'il y avait eu une réponse, l'un de
ces modèles aurait cessé d'exister depuis longtemps. Les deux modèles ont leurs avantages et leurs
inconvénients.

Compilation vs. Interprétation - avantages et inconvénients


Compilation Interprétation
 L'exécution du code traduit est  Vous pouvez lancer le code dès que vous
généralement plus rapide ; l'avez terminé - il n'y a pas de phases de
 Seul l'utilisateur doit disposer du traduction supplémentaires ;
compilateur - l'utilisateur final peut  le code est stocké en utilisant le langage
utiliser le code sans celui-ci ; de programmation et non le langage
Avantages
 Le code traduit est stocké en langage machine - cela signifie qu'il peut être
machine - comme il est très difficile à exécuté sur des ordinateurs utilisant
comprendre, vos propres inventions et différents langages machine ; vous ne
astuces de programmation resteront compilez pas votre code séparément pour
probablement votre secret. chaque architecture différente.
 La compilation elle-même peut être un  Ne vous attendez pas à ce que
processus très long - il se peut que vous l'interprétation fasse passer votre code à
ne puissiez pas exécuter votre code grande vitesse - votre code partagera la
immédiatement après une modification ; puissance de l'ordinateur avec
Inconvénients
 Vous devez disposer d'autant de l'interpréteur, donc il ne peut pas être
compilateurs que de plates-formes vraiment rapide ;
matérielles sur lesquelles vous voulez  Vous et l'utilisateur final devez disposer de
que votre code soit exécuté. l'interpréteur pour exécuter votre code.

Qu'est-ce que tout cela signifie pour vous ?

 Python est un langage interprété. Cela signifie qu'il hérite de tous les avantages et
inconvénients décrits. Bien entendu, il ajoute certaines de ses caractéristiques uniques aux
deux ensembles.
 Si vous voulez programmer en Python, vous aurez besoin de l'interpréteur Python. Vous ne
pourrez pas exécuter votre code sans lui. Heureusement, Python est gratuit. C'est l'un de ses
plus importants avantages.

Pour des raisons historiques, les langages conçus pour être utilisés à la manière de l'interprétation
sont souvent appelés langages de script, tandis que les programmes sources encodés à l'aide de ces
derniers sont appelés scripts.

« Guido van Rossum » inventeur du …

4
Qu'est-ce que Python ?
Python est un langage de programmation de haut niveau, largement utilisé, interprété et orienté
objet, avec une sémantique dynamique, utilisé pour la programmation générale.

Et si vous connaissez le python comme un grand serpent, le nom du langage de programmation


Python vient d'une ancienne série de sketchs comiques de la BBC intitulée Monty Python's Flying
Circus.

Au plus fort de son succès, l'équipe des Monty Python présentait ses sketches en direct à des publics
du monde entier, notamment au Hollywood Bowl.

Comme Monty Python est considéré comme l'un des deux nutriments fondamentaux pour un
programmeur (l'autre étant la pizza), le créateur de Python a nommé le langage en l'honneur de la
série télévisée.

Qui a créé Python ?

L'une des caractéristiques étonnantes de Python est le fait qu'il s'agit en fait du travail d'une seule
personne. Habituellement, les nouveaux langages de programmation sont développés et publiés par
de grandes entreprises employant de nombreux professionnels, et en raison des règles de copyright,
il est très difficile de nommer les personnes impliquées dans le projet. Python est une exception.

Il n'y a pas beaucoup de langages dont les auteurs sont connus par leur nom. Python a été créé par
Guido van Rossum, né en 1956 à Haarlem, aux Pays-Bas. Bien entendu, Guido van Rossum n'a pas
développé et fait évoluer lui-même tous les composants de Python.

La rapidité avec laquelle Python s'est répandu dans le monde est le résultat du travail continu de
milliers de programmeurs (très souvent anonymes), de testeurs, d'utilisateurs (dont beaucoup ne
sont pas des spécialistes de l'informatique) et d'enthousiastes, mais il faut dire que la toute première
idée (la graine dont Python a germé) est venue à une tête - celle de Guido.

Un projet de programmation de loisirs


Les circonstances dans lesquelles Python a été créé sont un peu déroutantes. Selon Guido van
Rossum :

« En décembre 1989, je cherchais un projet de programmation "hobby" qui me permettrait de


m'occuper pendant la semaine autour de Noël. Mon bureau (...) serait fermé, mais j'avais un
ordinateur à la maison, et pas grand-chose d'autre sur les bras. J'ai décidé d'écrire un interpréteur
pour le nouveau langage de script auquel j'avais pensé dernièrement : un descendant d'ABC qui
ferait appel aux pirates Unix/C. J'ai choisi Python comme titre de travail pour le projet, étant
d'humeur légèrement irrévérencieuse (et grand fan du Flying Circus de Monty Python). »

Guido van Rossum

Les objectifs de Python


En 1999, Guido van Rossum a défini ses objectifs pour Python :

 Un langage facile et intuitif tout aussi puissant que ceux des principaux concurrents ;
 Une source ouverte, afin que chacun puisse contribuer à son développement ;
 Un code aussi compréhensible qu'un simple anglais ;
 Adapté aux tâches quotidiennes, permettant des temps de développement courts.

5
Une vingtaine d'années plus tard, il est clair que toutes ces intentions se sont concrétisées. Certaines
sources affirment que Python est le langage de programmation le plus populaire au monde, tandis
que d'autres prétendent que c'est le troisième ou le cinquième.

Quoi qu'il en soit, il occupe toujours un rang élevé dans les dix premiers de la PYPL PopularitY of
Programming Language ([Link] et la TIOBE Programming Community
Index ([Link]

Le python n'est pas un langage jeune. Il est mature et digne de confiance. Ce n'est pas un miracle
d'un seul coup. C'est une étoile brillante dans le firmament de la programmation, et le temps passé à
apprendre Python est un très bon investissement.

Qu'est-ce qui rend Python si spécial ?


Comment se fait-il que les programmeurs, jeunes et vieux, expérimentés et novices, veuillent
l'utiliser ? Comment se fait-il que de grandes entreprises aient adopté Python et mis en œuvre leurs
produits phares en l'utilisant ?

Les raisons sont nombreuses - nous en avons déjà énuméré quelques-unes, mais nous allons les
énumérer à nouveau de manière plus pratique :

 Il est facile à apprendre - le temps nécessaire pour apprendre Python est plus court que pour
de nombreux autres langages ; cela signifie qu'il est possible de commencer la
programmation proprement dite plus rapidement ;
 Il est facile à enseigner - la charge de travail est plus faible que celle des autres langages ;
cela signifie que l'enseignant peut mettre davantage l'accent sur les techniques de
programmation générales (indépendantes du langage), en ne gaspillant pas son énergie à des
tours exotiques, des exceptions étranges et des règles incompréhensibles ;
 Il est facile à utiliser pour écrire de nouveaux logiciels - il est souvent possible d'écrire du
code plus rapidement en utilisant Python ;
 Il est facile à comprendre - il est aussi souvent plus facile de comprendre plus rapidement le
code de quelqu'un d'autre s'il est écrit en Python ;
 Il est facile à obtenir, à installer et à déployer - Python est gratuit, ouvert et
multiplateformes ; tous les langages ne peuvent pas se vanter de cela.

Bien sûr, le python a aussi ses inconvénients :

 Ce n'est pas un démon de la vitesse - Python n'offre pas de performances exceptionnelles ;


 Dans certains cas, il peut résister à certaines techniques de test plus simples - cela peut
signifier que le débogage du code Python peut être plus difficile qu'avec d'autres langages ;
heureusement, il est toujours plus difficile de faire des erreurs en Python.

Il convient également de préciser que Python n'est pas la seule solution de ce type disponible sur le
marché des technologies de l'information.

Il a de nombreux adeptes, mais il y en a beaucoup qui préfèrent d'autres langages et ne considèrent


même pas Python pour leurs projets.

Les rivaux de Python ?


Python a deux concurrents directs, avec des propriétés et des prédispositions comparables. Ce sont :

6
 Perl - un langage de script écrit à l'origine par Larry Wall ;
 Ruby - un langage de script créé par Yukihiro Matsumoto.

Le premier est plus traditionnel, plus conservateur que Python, et ressemble à certains des bons
vieux langages dérivés du langage de programmation C classique.

En revanche, le second est plus innovant et plus riche en idées nouvelles que Python. Python lui-
même se situe quelque part entre ces deux créations.

L'Internet regorge de forums où l'on discute à l'infini de la supériorité de l'un de ces trois langages
sur les autres, si vous souhaitez en savoir plus sur chacun d'entre eux…

Où pouvons-nous voir Python en action ?


Nous le voyons tous les jours et presque partout. Il est largement utilisé pour mettre en œuvre des
services Internet complexes comme les moteurs de recherche, le stockage et les outils dans le
nuage, les médias sociaux, etc. Chaque fois que vous utilisez l'un de ces services, vous êtes en fait
très proche de Python, bien que vous ne le sachiez pas.

De nombreux outils de développement sont implémentés en Python. De plus en plus d'applications


d'usage quotidien sont écrites en Python. Beaucoup de scientifiques ont abandonné les outils
propriétaires coûteux pour passer à Python. De nombreux testeurs de projets informatiques ont
commencé à utiliser Python pour effectuer des procédures de test répétables. La liste est longue.

Pourquoi pas Python ?


Malgré la popularité croissante de Python, il existe encore quelques niches où le python est absent,
ou rarement vu :

 La programmation de bas niveau (parfois appelée programmation "proche du métal") : si


vous souhaitez mettre en œuvre un pilote ou un moteur graphique extrêmement efficace,
vous n'utiliserez pas Python ;
 Les applications pour les appareils mobiles : bien que ce territoire attende encore d'être
conquis par Python, cela arrivera très probablement un jour.

Il y a plus d'un python


Il existe deux principaux types de Python, appelés Python 2 et Python 3.

Python 2 est une version plus ancienne du Python original. Son développement a depuis été
intentionnellement bloqué, bien que cela ne signifie pas qu'il n'y a pas de mises à jour. Au contraire,
les mises à jour sont publiées régulièrement, mais elles ne sont pas destinées à modifier le langage
de manière significative. Elles corrigent plutôt les bogues et les failles de sécurité récemment
découverts. Le développement de Python 2 est déjà dans une impasse, mais Python 2 lui-même est
encore bien vivant.

Python 3 est la version la plus récente (pour être précis, la version actuelle) du langage. Il suit son
propre chemin d'évolution, créant ses propres normes et habitudes.

Le premier est plus traditionnel, plus conservateur que Python, et ressemble à certains des bons
vieux langages dérivés du langage de programmation C classique.

Ces deux versions de Python ne sont pas compatibles entre elles. Les scripts Python 2 ne
fonctionneront pas dans un environnement Python 3 et vice versa, donc si vous voulez que l'ancien

7
code Python 2 soit exécuté par un interpréteur Python 3, la seule solution possible est de le réécrire,
pas à partir de zéro, bien sûr, car de grandes parties du code peuvent rester intactes, mais vous
devez réviser tout le code pour trouver toutes les incompatibilités possibles. Malheureusement, ce
processus ne peut pas être entièrement automatisé.

Il est trop difficile, trop long, trop coûteux et trop risqué de migrer une ancienne application Python 2
vers une nouvelle plate-forme. Il est possible que la réécriture du code introduise de nouveaux
bogues. Il est plus facile et plus judicieux de laisser ces systèmes tranquilles et d'améliorer
l'interpréteur existant, au lieu d'essayer de travailler à l'intérieur du code source qui fonctionne déjà.

Python 3 n'est pas seulement une meilleure version de Python 2 - c'est un langage complètement
différent, bien qu'il soit très similaire à son prédécesseur. Quand on les regarde de loin, ils semblent
être les mêmes, mais quand on les regarde de près, on remarque beaucoup de différences.

Si vous modifiez une ancienne solution Python existante, il est fort probable qu'elle ait été codée en
Python 2. C'est la raison pour laquelle Python 2 est toujours utilisé. Il y a trop d'applications Python 2
existantes pour l'abandonner complètement.

Note

Si vous allez démarrer un nouveau projet Python, vous devez utiliser Python 3, et c’est la version de
Python qui sera utilisée pendant ce cours.

Il est important de se rappeler qu'il peut y avoir des différences plus ou moins importantes entre les
versions ultérieures de Python 3 (par exemple, Python 3.6 a introduit des clés de dictionnaire
ordonnées par défaut dans l'implémentation de CPython) - la bonne nouvelle, cependant, est que
toutes les nouvelles versions de Python 3 sont rétro-compatibles avec les versions précédentes de
Python 3. Chaque fois que cela sera significatif et important, nous essaierons toujours de mettre en
évidence ces différences dans le cours.

Tous les échantillons de code que vous trouverez dans le cours ont été testés sur Python 3.4, Python
3.6 et Python 3.7.

Python alias CPython


En plus de Python 2 et Python 3, il existe plus d'une version de chacun.

Tout d'abord, il y a les Pythons qui sont maintenus par les personnes réunies autour de la PSF
(Python Software Foundation), une communauté qui vise à développer, améliorer, étendre et
populariser Python et son environnement. Le président de la PSF est Guido von Rossum lui-même, et
pour cette raison, ces Pythons sont appelés canoniques. Ils sont également considérés comme des
Pythons de référence, car toute autre implémentation du langage doit suivre tous les standards
établis par la PSF.

Guido van Rossum a utilisé le langage de programmation "C" pour mettre en œuvre la toute
première version de son langage et cette décision est toujours en vigueur. Tous les Pythons
provenant de la FSP sont écrits en langage "C". Cette approche a de nombreuses raisons et de
nombreuses conséquences. L'une d'entre elles (probablement la plus importante) est que grâce à
elle, Python peut être facilement porté et migré vers toutes les plates-formes avec la possibilité de

8
compiler et d'exécuter des programmes en langage "C" (pratiquement toutes les plates-formes
possèdent cette caractéristique, ce qui ouvre de nombreuses possibilités d'expansion pour Python).

C'est pourquoi la mise en œuvre du PSF est souvent appelée CPython. C'est le Python le plus influent
parmi tous les Pythons du monde.

Cython
Un autre membre de la famille Python est Cython.

Cython est l'une des nombreuses solutions possibles au plus douloureux des traits de caractère de
Python - le manque d'efficacité. Les calculs mathématiques importants et complexes peuvent être
facilement codés en Python (beaucoup plus facilement qu'en "C" ou tout autre langage traditionnel),
mais l'exécution du code qui en résulte peut-être extrêmement longue.

Comment concilier ces deux contradictions ? Une solution consiste à écrire vos idées mathématiques
en Python, et lorsque vous êtes absolument sûr que votre code est correct et produit des résultats
valables, vous pouvez le traduire en "C". Il est certain que le "C" fonctionnera beaucoup plus vite que
le Python pur.

C'est ce que Cython est censé faire - traduire automatiquement le code Python (propre et clair, mais
pas trop rapide) en code "C" (compliqué et bavard, mais agile).

Jython
Une autre version de Python s'appelle Jython.

"J" est pour "Java". Imaginez un Python écrit en Java au lieu de C. C'est utile, par exemple, si vous
développez des systèmes complexes et de grande taille écrits entièrement en Java et que vous
souhaitez y ajouter une certaine flexibilité Python. Le CPython traditionnel peut être difficile à
intégrer dans un tel environnement, car C et Java vivent dans des mondes complètement différents
et ne partagent pas beaucoup d'idées communes.

Jython peut communiquer plus efficacement avec l'infrastructure Java existante. C'est pourquoi
certains projets le trouvent utilisable et nécessaire.

Note : l'implémentation actuelle de Jython suit les standards de Python 2. Il n'y a pas de Jython
conforme à Python 3, jusqu'à présent.

PyPy and RPython


Soyez attentif au logo ci-dessous. C'est une énigme. Pouvez-vous la résoudre ?

9
C'est un logo du PyPy - un python dans un python. En d'autres termes, il représente un
environnement Python écrit dans un langage similaire au Python appelé RPython (Restricted
Python). Il s'agit en fait d'un sous-ensemble de Python. Le code source de PyPy n'est pas exécuté à la
manière de l'interprétation, mais est plutôt traduit dans le langage de programmation C et ensuite
exécuté séparément.

C'est utile car si vous voulez tester une nouvelle fonctionnalité qui pourrait être (mais ne doit pas
être) introduite dans l'implémentation Python courante, il est plus facile de la vérifier avec PyPy
qu'avec CPython. C'est pourquoi PyPy est plutôt un outil pour les personnes qui ne développent
Python que pour le reste des utilisateurs.

Cela ne rend pas PyPy moins important ou moins sérieux que CPython, bien sûr.

De plus, PyPy est compatible avec le langage Python 3.

Il y a beaucoup plus de pythons différents dans le monde. Vous les trouverez si vous cherchez, mais
ce cours s’intéressera au CPython.

Comment obtenir Python et comment l'utiliser ?


Il existe plusieurs façons d'obtenir votre propre copie de Python 3, en fonction du système
d'exploitation que vous utilisez.

Les utilisateurs de Linux ont très probablement déjà installé Python - c'est le scénario le plus
probable, car l'infrastructure de Python est intensivement utilisée par de nombreux composants du
système d'exploitation Linux.

Par exemple, certains distributeurs peuvent coupler leurs outils spécifiques avec le système et
beaucoup de ces outils, comme les gestionnaires de paquets, sont souvent écrits en Python.
Certaines parties des environnements graphiques disponibles dans le monde Linux peuvent
également utiliser Python.

Si vous êtes un utilisateur de Linux, ouvrez le terminal/console et tapez :

python3

A l'invite du shell, appuyez sur Entrée et attendez.

Si vous voyez quelque chose comme ceci :

Python 3.4.5 (default, Jan 12 2017, 02:28:40)


[GCC 4.2.1 Compatible Clang 3.7.1 (tags/RELEASE_371/final)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

Alors vous n'avez rien d'autre à faire.

Si Python 3 est absent, reportez-vous à votre documentation Linux afin de savoir comment utiliser
votre gestionnaire de paquets pour télécharger et installer un nouveau paquet - celui dont vous avez
besoin s'appelle python3 ou son nom commence par cela.

Tous les utilisateurs non-Linux peuvent en télécharger une copie à


l'adresse : [Link] téléchargez et installez intuitivement…

Et c’est parti !

10
Télécharger et installer Python
Comme le navigateur indique au site de téléchargement que vous êtes entré dans le système
d'exploitation que vous utilisez, la seule chose que vous devez faire est de cliquer sur la version
Python appropriée que vous souhaitez.

Dans ce cas, sélectionnez Python 3. Le site vous propose toujours la dernière version.

Si vous êtes un utilisateur de Windows, il vous suffit de cliquer sur le bouton


afin de télécharger le fichier « [Link] » sur le disque dur de votre ordinateur
(généralement se fichier est placé dans le dossier Téléchargement ou Downloads).

Lancez ensuite le fichier « [Link] » téléchargé et suivez intuitivement toutes les étapes
d’installation…Laissez les paramètres par défaut proposés par l'installateur pour l'instant, à une
exception près - regardez la case à cocher nommée Add Python 3.x to PATH et cochez-la. Cela
facilitera les choses.

Commencer votre travail avec Python


Maintenant que vous avez installé Python 3, il est temps de vérifier s'il fonctionne et d'en faire la
toute première utilisation.

Ce sera une procédure très simple, mais elle devrait suffire à vous convaincre que l'environnement
Python est complet et fonctionnel.

Pour commencer votre travail, vous avez besoin des outils suivants :

 Un éditeur qui vous aidera à écrire le code (il doit présenter certaines caractéristiques
particulières, non disponibles dans les outils simples) ; cet éditeur dédié vous donnera plus
que l'équipement standard du système d'exploitation (bloc-notes ou autres…).
 Une console dans laquelle vous pouvez lancer votre code nouvellement écrit et l'arrêter de
force lorsqu'il devient incontrôlable.
 Un outil appelé débogueur, capable de lancer votre code étape par étape et vous permettant
de l'inspecter à chaque instant de son exécution.

Outre ses nombreux composants utiles, l'installation standard de Python 3 contient une application
très simple mais extrêmement utile appelée IDLE.

IDLE est un acronyme : « Integrated Development and Learning Environment », ce qui veut dire un
environnement de développement intégré de Python qui est une interface utilisateur permettant
d’éditer votre code, l’exécuter et faire pleins de choses utiles que l’on verra par la suite. Cette
application ressemble à Eclipse de Java, Netbeans de Java également, Dev C++ du langage C++, Visual
Studio pour C#...

Naviguez dans les menus de votre OS (Windows par exemple), trouvez IDLE quelque part sous
Python 3.x et lancez-le :

11
Voici ce que vous devriez voir :

Une autre manière de faire aurait été de travailler directement avec la console, pour cela il suffit de
taper le nom du programme « python 3.8 » au niveau de la zone de recherche de Windows :

Pour obtenir la console :

12
Comment écrire et gérer votre tout premier programme ?
Il est maintenant temps d'écrire et d'exécuter votre premier programme Python 3. Ce sera très
simple, pour l'instant.

La première étape consiste à créer un nouveau fichier source et à le remplir de code. Cliquez sur
Fichier dans le menu de l'IDLE et choisissez les options « File »  « New File » :

Pour obtenir :

13
Comme vous pouvez le voir, IDLE vous ouvre une nouvelle fenêtre. Vous pouvez l'utiliser pour écrire
et modifier votre code.

C'est la fenêtre de l'éditeur. Son seul but est d'être un lieu de travail dans lequel votre code source
est traité. Ne confondez pas la fenêtre de l'éditeur avec la fenêtre de l'interpréteur de commandes.
Elles remplissent différentes fonctions.

La fenêtre de l'éditeur est actuellement sans titre, mais il est bon de commencer le travail en
nommant le fichier source.

Cliquez sur File (dans la nouvelle fenêtre), puis sur Save as..., sélectionnez un dossier pour le nouveau
fichier (le bureau est un bon endroit pour vos premières tentatives de programmation) et choisissez
un nom pour le nouveau fichier. Pour ma part j’ai nommé mon fichier source « Exemple1 » que j’ai
placé dans le bureau, dans le dossier « Labs Formation Python\Module1 » :

Au passage notre code source s’appelle « [Link] », constatez que le suffixe des code source
python est « py ».

Remarque : ne définissez aucune extension pour le nom du fichier que vous allez utiliser. Python a
besoin que ses fichiers portent l'extension .py, vous devez donc vous fier aux paramètres par défaut
de la fenêtre de dialogue. L'utilisation de l'extension .py standard permet au système d'exploitation
d'ouvrir correctement ces fichiers.

Mettez maintenant une seule ligne dans votre fenêtre d'éditeur nouvellement ouverte et nommée
« Exemple1 ».

14
La ligne ressemble à ceci :

print("Ramadan Moubarak...")

Nous n'allons pas expliquer la signification du programme pour l'instant. Vous trouverez une
discussion détaillée dans le chapitre suivant, mais vous vous doutez que cette instruction aura pour
effet d’afficher quelque chose…

Regardez de plus près les guillemets. Il s'agit de la forme la plus simple de guillemets (neutre, droit,
muet, etc.) communément utilisée dans les fichiers sources. N'essayez pas d'utiliser des guillemets
typographiques (courbes, bouclés, intelligents, etc.), utilisés par les processeurs de texte avancés, car
Python ne les accepte pas.

Si tout se passe bien et qu'il n'y a pas d'erreurs dans le code, la fenêtre de la console vous montrera
les effets causés par l'exécution du programme.

Pour cela, enregistrer d’abord les modifications dans le fichier, ensuite choisissez le menu « Run » 
« Run Module », ou plus simplement appuyez sur la touche F5 du clavier :

Pour obtenir l’exécution du programme au niveau de la console :

Fermez maintenant les deux fenêtres et revenez sur le bureau.

15
Comment « endommager » et corriger votre code
Rouvrez de nouveau votre IDLE.

Cliquez sur « File »  « Open », pointez sur le fichier que vous avez sauvegardé précédemment et
laissez IDLE le lire.

Essayez de le ré-exécuter en appuyant sur « F5 » lorsque la fenêtre de l'éditeur est active.

Comme vous pouvez le voir, IDLE est capable de sauvegarder votre code et de le récupérer lorsque
vous en avez besoin à nouveau.

IDLE contient une fonction supplémentaire et utile.

Premièrement, supprimer la parenthèse fermante :

print("Ramadan Moubarak..."

Ensuite, entrez à nouveau entre parenthèses. Votre constaterez qu’il mettra le texte en grisé.

Chaque fois que vous mettez la parenthèse fermante dans votre programme, IDLE affichera la partie
du texte limitée par une paire de parenthèses correspondantes. Cela vous aide à vous souvenir de les
placer par paires.

Supprimer à nouveau la parenthèse fermante. Le code devient erroné, il contient maintenant une
erreur de syntaxe et IDLE ne permettra pas de l’exécuter.

Essayez d’exécuter le programme. IDLE vous rappellera de sauvegarder le fichier modifié. Suivez les
instructions.

Surveillez attentivement toutes les fenêtres. Une nouvelle fenêtre apparaît - elle indique que
l'interpréteur a rencontré un EOF (endof-file) bien que (à son avis) le code devrait contenir un peu
plus de texte.

La fenêtre de l'éditeur montre clairement où cela s'est passé :

Corrigez le code. Il devrait ressembler à ceci :

print("Ramadan Moubarak...")

Exécutez de nouveau le programme pour constater que cette fois-ci ça marche.

16
Essayez maintenant d’insérer une autre erreur dans le code. Retirez une lettre du mot « print », par
exemple la lettre « t ». Exécutez le code en appuyant sur F5. Comme vous pouvez le voir, Python
n'est pas capable de reconnaître l'erreur.

Vous avez peut-être remarqué que le message d'erreur généré pour l'erreur précédente est très
différent du premier :

En effet, la nature de l'erreur est différente et l'erreur est découverte à un stade différent de
l'interprétation.

La fenêtre de l'éditeur ne fournira aucune information utile concernant l'erreur, mais les celle de la
console le pourrait.

Le message (en rouge) s'affiche (dans les lignes suivantes) :

 Le traceback (qui est le chemin que le code parcourt à travers différentes parties du
programme - vous pouvez l'ignorer pour l'instant, car il est vide dans un code aussi simple) ;
 L’emplacement de l'erreur (le nom du fichier contenant l'erreur, le numéro de ligne et le
nom du module) ; remarque : le numéro peut être trompeur, car Python indique
généralement l'endroit où il remarque pour la première fois les effets de l'erreur, pas
nécessairement l'erreur elle-même ;
 Le contenu de la ligne erronée ; note : la fenêtre de l'éditeur d'IDLE n'affiche pas les numéros
de ligne, mais elle affiche l'emplacement actuel du curseur dans le coin inférieur droit ;
utilisez-la pour localiser la ligne erronée dans un long code source ;
 Le nom de l'erreur et une brève explication : « NameError: name 'prin' is not defined »

Expérimentez la création de nouveaux fichiers et l'exécution de votre code. Essayez d'afficher un


message différent à l'écran. Essayez d'altérer et de réparer votre code - voyez ce qui se passe…

Sandbox « Bac à sable »


A vrai dire, ce cours ne nécessite pas l'installation de logiciels (python 3.8.2) pour tester votre code et
faire les exercices.

Pour tester ou expérimenter votre code, vous pouvez utiliser un environnement de programmation
en ligne dédié et interactif.

Sandbox permet d'exécuter du code Python dans un navigateur Internet.

17
Il s'agit d'un outil intégré dans le cours, qui peut être utilisé comme une sandbox Python basée sur
un navigateur qui vous permet de tester le code discuté tout au long du cours, ainsi qu'un
interpréteur qui vous permet de lancer, d'effectuer et de tester les exercices des labs
spécifiquement conçus pour ce cours.

L'interface Sandbox se compose de trois parties principales :

 La fenêtre de l'éditeur, qui vous permet de saisir votre code,


 La fenêtre Console, qui vous permet de voir le résultat de l’exécution de vos programmes,
 Un outil appelé la barre des boutons d'action, qui vous permet d'exécuter votre code, de
rafraîchir la fenêtre de l'éditeur, de télécharger votre programme sous forme de fichier .py,
de télécharger un fichier .py qui sera affiché dans l'éditeur, de signaler un bug (au cas où
vous relèveriez une erreur, faites-le nous savoir !).
 Et le bouton "Settings", qui vous permet de régler les paramètres d'affichage et de passer
d'un environnement Python/C/C++ à l'autre.

Copiez maintenant le code suivant :

print("Hello!")
print("Welcome to Python Essentials!")
print("THIS IS SANDBOX MODE.")

...puis cliquez sur le bouton Sandbox (Bouton à droite de votre page de cours
NetAcad) pour entrer en mode Sandbox, collez le code dans la fenêtre de l'éditeur, et cliquez sur le

bouton Run pour voir ce qui se passe.

Voilà le résultat de l’exécution :

Pour revenir au cours de NetAcad, cliquez sur le bouton dans le coin supérieur
droit de l'interface du Sandbox.

Essayez maintenant de vous familiariser avec l’interface Sandbox, elles est très intuitive.

Félicitations ! Vous avez terminé le module 1

18
Et Maintenant place au QUIZ.

19

Vous aimerez peut-être aussi