Introduction à Python

publicité
POIRET Aurélien
Algorithmique
MPSI
F
Chapitre No I : Introduction à Python
Un algorithme est une suite finie d’opérations élémentaires constituant un schéma de calcul ou de
résolution de problème.
Une fois conçu, on traduit l’algorithme dans un langage de programmation (Python, Mapple, Scilab, Pascal etc...) qui convertit les instructions en langage machine et permet ainsi à l’ordinateur
d’exécuter l’algorithme. Faire de l’algorithmique, c’est donc décomposer un problème complexe en des
sous-problèmes de plus en plus simples jusqu’à arriver aux actions élémentaires que connaît l’ordinateur.
Cette année, vous allez programmer en Python, de préférence avec la version 3. J’attire votre attention sur le fait que Python n’est pas un nom de logiciel mais bien un langage de programmation.
Nous utiliserons donc l’environnement Spyder pour programmer en Python.
Si ce n’est pas encore fait, un tel logiciel s’installe à partir du lien suivant :
https://www.continuum.io/downloads
1
Prise en main avec l’environnement Spyder
L’environnement Spyder se décompose en plusieurs fenêtres. Il faut bien faire la différence entre
l’interpréteur et l’éditeur. L’éditeur sera l’endroit où vous taperez vos programmes en langage Python.
L’interpréteur sera l’endroit où vous exécuterez vos programmes. L’interpréteur sert également de
calculatrice, c’est l’endroit où vous taperez vos calculs et c’est aussi l’endroit ou vous pourrez tester
l’écriture d’une ligne de commande.
Je vous conseille également de laisser à votre disposition la fenêtre de l’explorateur de variables et
celle de l’explorateur d’objets.
1
2
Sur la capture d’écran précédente, vous pouvez identifier un fichier d’édition dans la fenêtre de
gauche (qui correspond à notre éditeur), notre console dans la fenêtre en bas à droite (qui correspond
à notre interpréteur) et les explorateurs de variables et d’objets
Pour écrire un nouveau programme, il suffit de cliquer sur fichier puis nouveau fichier. Le premier
réflexe est de sauvegarder votre programme avec un nom cohérent (sans espace, sans tiret et sans
caractère spécial). Une fois votre programme écrit, n’oubliez pas de le sauvegarder avant de l’exécuter.
Pour cela, il suffit de cliquer sur la touche raccourcie clavier F5.
Le début d’un programme commencera toujours, et dans cet ordre,
— par l’encodage utilisée, la plupart du temps # -*- coding: latin1 -*-,
— puis, par la date de création du programme et le nom d’auteur,
— puis, par les bibliothèques, les fonctions et procédures que vous importez.
Ce sera seulement après ces lignes de code que commencera l’écriture de votre programme.
Exemple 1 : On écrit le programme intitulé age contenant les lignes suivantes :
# -*- coding: latin1 -*"""
@author: POIRET
"""
age=eval(input("Tu as quel âge ?")) # On définit la variable age qui demande notre âge
print("Tu as donc",age,"ans.") # On retourne notre âge avec le texte adéquat
Lorsque l’on exécute ce programme dans l’interpréteur, on obtient le résultat suivant
> > > runfile(’C:/Users/POIRET/age.py’, wdir=’C:/Users/POIRET’)
Tu as quel âge ? 18
Tu as 18 ans.
La commande # sert à écrire des commentaires. Si les commentaires ont lieu sur plusieurs lignes, on
les écrit entre """.
La commande \ sert pour aller à la ligne dans l’éditeur sans que l’interpréteur lui aille à la ligne : cela
sert surtout lorsque nous avons une longue ligne de code et que nous voulons la voir complète à l’écran.
La commande print permet d’écrire un texte. Attention, n’oubliez pas de mettre entre parenthèses
tout le texte à afficher (pas nécessaire avec la version 2.7).
La commande input permet de définir une variable. Attention avec la version 3.3 de Python, il faut
précéder cette commande du mot clef eval afin d’éviter que la variable définie soit interprétée comme
une chaîne de caractères.
Nous expliquons ce qu’est une variable dans la partie suivante.
2
Les variables
Une variable est une représentation idéale d’une zone de mémoire de l’ordinateur. Il s’agit d’un
endroit où l’on peut stocker une valeur, y accéder et changer cette valeur.
Une variable se caractérise par
— un nom qui permet de l’identifier,
3
— une valeur,
— son type (entier, flottant, chaîne de caractères, liste ou booléen).
L’affectation est l’instruction qui permet d’assigner une valeur à une variable. Si cette dernière n’existe
pas encore, on parle de déclaration de la variable. Elle correspond au codage
nom_de_variable←valeur.
En python, cela se fait à l’aide de la syntaxe suivante :
nom_de_variable=valeur.
Exemple 2 : On peut écrire dans l’interpréteur, la liste de commande suivante :
> > > X=3.14
> > > X
3.14
> > > Y="J’aime l’école !"
> > > Y
"J’aime l’école !"
Dans l’exemple précédent, on note qu’il existe plusieurs types de variables (en l’occurrence ici, les
flottants et les chaînes de caractères).
Voici les différents types de variables qu’il est impératif de connaître :
Type de variable
Entiers relatifs
Nombres à virgule
Listes
Chaînes de caractères
Booléens
Syntaxe en Python
int
float
list
str
bool
Description
Entiers de -214748364 à 214748364
Nombres décimaux
Tableaux formés de lettres et nombres
Tableaux formés uniquement de lettre
Peut prendre deux valeurs True ou False
Lorsque l’on définit une variable, il faut donc avoir en tête le type de variable que nous avons définie.
En cas de doute, vous pouvez utilisez la fonction type(variable) où vous remplacer variable par votre
variable.
Il peut-être également utile de savoir comment convertir un type de variable en un autre type de
variable. Le tableau récapitulatif à connaître est le suivant :
A utiliser
int(x)
float(x)
str(x)
list(x)
[x]
Pour transformer
Le type float en type int
Exemple : int(2.5) retourne 2
Le type int en type float
Exemple : float(2) retourne 2.0
Le type int, float ou list en type str
Exemples :
- str(3). retourne ’3’
- str(3.0) retourne ’3.0’
- str([1,2,3]) retourne ’[1,2,3]’
Le type str en type list
Exemple : list("test’’) retourne [’t’,’e’,’s’,’t’]
Le type float ou int en type list
Exemples :
- [3]
- [3.0]
4
Enfin, il peut être important de connaître les opérations élémentaires que nous pouvons effectuer sur
les variables. En voici une liste :
Opérateur
+
*
/
%
//
**
+=
-=
*=
/=
Utilité
Addition
Soustraction
Multiplication
Division
Modulo (reste de la division)
Quotient (de la division)
Puissance
Rajouter à la variable
Enlever à la variable
Multiplier à la variable
Diviser à la variable
Attention, le résultat de ces dernières opérations peut dépendre du type de la variable considérée.
Exemple 3 : Voici quelques exemples :
Syntaxe rentrée dans l’interpréteur
3+3
2**3
13%4
13//4
x=4 puis x+=3
X,Y="J’aime ","l’école" puis X+Y
3*[1,2,3]
[4,5,6]+[1,2,3]
False+True
False*True
not False+False
5
Résultat obtenu
6
8
1
3
7
"J’aime l’école"
[1,2,3,1,2,3,1,2,3]
[4,5,6,1,2,3]
True
False
True
Téléchargement