PAD – INPT
ALGORITHMIQUE ET PROGRAMMATION 1
Exercices corrigés en Python, Semaine 0
avril–mai 2016
Introduction au module : exercices corrigés en
Python
Objectifs
Installer l’environnement de développement ;
Se familiariser avec l’environnement de développement ;
Choisir les bons types ;
Écrire un premier programme ;
Manipuler les entrées/sorties ;
1 L’environnement SPYDER
SPYDER (Scientific PYthon Development EnviRonment) est un environnement de dévelop-
pement pour le langage Python, livré avec tout un ensemble de bibliothèques permettant de faire
du calcul scientifique, de développer des interfaces-utilisateurs et des visualisations graphiques,
et beaucoup d´autres choses encore. Il est livré avec un éditeur pour écrire du code, une console
pour saisir les données et voir les résultats, un explorateur de variables pour voir les valeurs des
variables lors de l’exécution et plusieurs autres services que nous découvrirons peu à peu.
2 Téléchargement et installation de SPYDER
Pour télécharger l´environnement libre et gratuit SPYDER inclut dans le package Anaconda :
allez sur le site https://www.continuum.io/downloads
allez dans la zone correspondant à votre système d’exploitation (Windows, Mac OS X,
Linux)
sur la colonne Python 3.x, cliquez sur le module "Installer" correspondant au type de
microprocesseur de votre ordinateur (voir la doc de l’ordinateur, ou dans le doute prendre
la version 32 bits qui est de toutes façons compatible avec la 64 bits)
Sous Windows, un raccourci direct sur SPYDER est accessible dans le menu Démarrer >
Tous les programmes > Anaconda > Spyder. On peut le dupliquer sur le bureau. Il correspond
Exercices corrigés en Python, Semaine 0 c
INPT–PAD 1/7
ALGORITHMIQUE ET PROGRAMMATION 1Introduction au module : exercices corrigés en Python
au lien suivant :
"C:\Program Files\PythonAnaconda\pythonw.exe" "C:\Program Files\PythonAnaconda\Scripts/spyder-script.py"
NOTA :"C:\Program Files\PythonAnaconda" représente ici le dossier d’installation du pa-
ckage Anaconda. Il peut être différent sur votre ordinateur.
Lancez ensuite SPYDER, soit en double-cliquant sur le raccourci, soit en passant par Menu
Démarrer > Anaconda > Spyder (sous Windows). La fenêtre suivante s’ouvre :
Les volets correspondent à différentes opérations dans SPYDER :
Le volet de gauche ("Editeur de code Python") sert à éditer des fichiers de programmes,
chaque fichier correspondant à un onglet (ici l’onglet pgcd-euclide-simple.py)
le volet en haut à droite donne des informations (inspecteur d’objets = documentation,
explorateur de fichiers, explorateur des variables existant à cet instant)
Le volet en bas à droite est la zone d’exécution ("Console") où l’on peut saisir des données
et afficher les résultats des programmes. Il existe 2 types de consoles (Console tout court
et Console IPython) : nous utiliserons la console IPython (Interactive Python).
3 Paramétrage de SPYDER
On peut paramétrer quelque options via la menu Outils > Préferences ou l’icône correspon-
dante (tournevis et clé à molettes). Une fenêtre s’ouvre avec diverses catégories dans le volet de
gauche.
3.1 Editeur
cocher "Afficher une ligne verticale après" et définir "79 caractères"
Exercices corrigés en Python, Semaine 0 c
INPT–PAD 2/7
ALGORITHMIQUE ET PROGRAMMATION 1Introduction au module : exercices corrigés en Python
noter le nom du "Thème de coloration syntaxique" (en bas), par exemple "Scintilla"
dans l’onglet "Options avancées", cocher "Insertion automatique de guillemets de clô-
ture"
3.2 Coloration syntaxique
cliquer sur l’onglet correspondant au thème précédent ("Scintilla") et définir la couleur
de fond (tout en haut), par exemple en jaune pâle
3.3 Console
cocher "Afficher icônes et textes"
3.4 Inspecteur d’objets
cocher l’affichage automatique de l’aide sur "Editeur", "Console Python" et "Console
IPython"
4 Fenêtres et barres d’outils
L’affichage des fenêtres utiles se fait par le menu Affichage > Volets.
L’affichage des barres d’outils utiles se fait par le menu Affichage > Barres d’outils. Cela
permet d’afficher les icônes correspondant à chaque barre en dessous de la ligne des menus.
5 Utilisation d’une console Python (mode interactif)
Une console est un volet permettant de saisir des commandes et d’afficher des résultats.
L’environnement SPYDER met à disposition 2 consoles :
Une "Console" tout court
Une "Console IPython" (pour "Interactive Python") permettant davantage de possibilités
pour gérer des affichages avec fenêtres et un système d’aide plus développé.
Nous allons rapidement voir ces 2 types de consoles, toutes 2 utilisables dans le même volet situé
en standard dans la partie inférieure droite de la fenêtre SPYDER.
5.1 Console standard
Le volet "Console" s’active en cliquant sur l’onglet "Console" situé juste à gauche de l’onglet
"Console IPython" en bas à droite de la fenêtre SPYDER. Il faut ensuite cliquer sur l’onglet
"Python1" situé à gauche de l’onglet "Noyau 1" dans la partie supérieure du volet.
Cette console Python permet de saisir directement des instructions Python pour lancer leur
exécution et afficher leur résultat (s’il y a quelque chose d’affichable). Voici l’écran d’accueil :
Exercices corrigés en Python, Semaine 0 c
INPT–PAD 3/7
ALGORITHMIQUE ET PROGRAMMATION 1Introduction au module : exercices corrigés en Python
Python 3.4.3 |Anaconda 2.3.0 (64-bit)| (default, Mar 6 2015, 12:06:10) [MSC v.1600 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Et voici quelques instructions, à taper derrière le message d’invite >>> :
>>> print("Bonjour à tous !")
Bonjour à tous !
>>> message1 = ’Je vous souhaite ...’
>>> message2 = "beaucoup d’enthousiasme !"
>>> message1 + message2
"Je vous souhaite ...beaucoup d’enthousiasme !"
Les chaînes de caractères peuvent utiliser indifféremment les ’simples quotes’ ou les "guillemets
doubles". Les types de données numériques de base sont les entiers (int) et les réels (float). On
peut connaître le type d’une variable ou d’un calcul avec la fonction type() :
>>> n = 20-5*3
>>> n
5
>>> type(n)
<class ’int’>
>>> f=5/3
>>> f
1.6666666666666667
>>> type(f)
<class ’float’>
>>> 10**(-2)
0.01
L’opérateur ** correspond à l’élévation à une puissance.
Les tests de base s’effectuent avec les opérateurs == (égalité) et != (différence), dont le résul-
tat est de type booléen (bool), avec les 2 valeurs prédéfinies True (avec un T majuscule) et False
(avec un F majuscule) :
>>> n==5
True
>>> n!=5
False
>>> type(n==5)
<class ’bool’>
Cette console permet également d’afficher de l’aide (en anglais) sur divers éléments du lan-
gage via l’instruction help :
Si on tape help() : on rentre dans le système d’aide, reconnaissable au message d’invite
help> ; on en sort en tapant quit
On peut taper help en précisant un sujet en paramètre, par exemple help(print) :
>>> help(print)
Help on built-in function print in module builtins:
print(...)
print(value, ..., sep=’ ’, end=’\n’, file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
Exercices corrigés en Python, Semaine 0 c
INPT–PAD 4/7
ALGORITHMIQUE ET PROGRAMMATION 1Introduction au module : exercices corrigés en Python
5.2 Console IPython (enhanced Interactive Python)
La console IPython est celle qui est activée par défaut. Voici l’écran d’accueil :
Python 3.4.3 |Anaconda 2.3.0 (64-bit)| (default, Mar 6 2015, 12:06:10) [MSC v.1600 64 bit (AMD64)]
Type "copyright", "credits" or "license" for more information.
IPython 3.2.0 -- An enhanced Interactive Python.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
? -> Introduction and overview of IPython’s features.
%quickref -> Quick reference.
help -> Python’s own help system.
object? -> Details about ’object’, use ’object??’ for extra details.
%guiref -> A brief reference about the graphical user interface.
Populating the interactive namespace from numpy and matplotlib
In [1]:
On remarque que le message d’invite est différent de la console standard, ce qui permet aussi de
rapidement les différencier : l’invite correspond au message In suivi entre crochet du numéro de
commande (historique de toutes les commandes tapées).
En pratique, c’est celle-ci que nous utiliserons car, outre toutes les possibilités offertes par la
console standard, elle dispose d’un système d’aide un peu plus développé et d’autres possibilités
que nous verrons (peut-être) plus tard. La saisie d’un point d’interrogation affiche le détail des
possibilités de cette console (taper la touche Echap pour revenir au message d’invite) :
IPython -- An enhanced Interactive Python
=========================================
IPython offers a combination of convenient shell features, special commands
and a history mechanism for both input (command history) and output (results
caching, similar to Mathematica). It is intended to be a fully compatible
replacement for the standard Python interpreter, while offering vastly
improved functionality and flexibility.
6 Utilisation du volet "Editeur de code Python"
Les programmes Python sont créables dans le volet de gauche qui permet de saisir des ins-
tructions, non exécutées au moment de leur écriture, mais destinées à être sauvegardées dans un
fichier-texte d’extension .py. Le nom du fichier en cours de modification apparaît dans le nom
d’onglet en haut du volet de code Python.
Par exemple, charger le fichier io-quantite-produit.py avec Fichier > Ouvrir (ou Ctrl-O,
ou icône "Ouvrir un fichier", la 2me à gauche en principe).
On peut ensuite lancer l’exécution du code via le menu Exécution > Exécution (ou touche
F5, ou icône "Exécuter le fichier" en forme de triangle vert). Les affichages liés à l’instruction
print se font dans la console IPython.
Attention : Si le programme demande des saisies via l’instruction input, il faut d’abord cliquer
dans la console IPython avec la souris avant de commencer la saisie :
>>> runfile(’.../io-quantite-produit.py’, wdir=’...’)
Code de l’article : INF01
Prix unitaire de l’article : 25
Quantité de l’article : 3
INF01 25.0 3 75.0 89.7
Exercices corrigés en Python, Semaine 0 c
INPT–PAD 5/7
1 / 7 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !