Environnement Du Langage Python
Environnement Du Langage Python
I. Historique du langage
Python est un langage de programmation développé depuis 1989 par le développeur néerlandais
Guido Van Rossum et de nombreux collaborateurs.
Le nom Python revient à une série de comédie des années 70 de la BBC nommée “Monty
Python’s Flying Circus”
▪ Python est portable, il peut fonctionner sur différentes plateformes OS (operating system)
▪ Python est gratuit, on peut l’utiliser sans restriction dans des projets commerciaux.
▪ Python convient aussi bien à des scripts d’une dizaine de lignes qu’a des projets complexes
de plusieurs dizaines de milliers de lignes.
▪ La syntaxe de Python est très simple et, combinée à des types de données évolués (listes,
dictionnaires, ensembles...)
▪ Python gère ses ressources (mémoire, descripteurs de fichiers...) sans intervention du
programmeur et il intègre un système de gestion de mémoire automatique.
▪ Python est un Langage de haut niveau (faire beaucoup avec peu de code, un programme
python est 3 à 5 fois moins cours qu’un programme C)
▪ Python est orienté-objet.
▪ Python intègre, comme Java ou les versions récentes de C++, un système d’exceptions, qui
permettent de simplifier considérablement la gestion des erreurs.
▪ Python est dynamiquement typé. Tout objet manipulable par le programmeur possède un type
bien défini à l’exécution, qui n’a pas besoin d’être déclaré à l’avance.
▪ Python respecte la casse (les majuscules et les minuscules ne sont pas pareils)
▪ Python est un langage inter-opérable (avec C Cython, Java Jython, C++,…)
▪ 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.
▪ Polyvalent: nous pouvons presque tout faire avec Python grâce à ses bibliothèques variées
(traçage de courbes, calcul scientifique, fichiers, Base de Données…)
III. Installation
Pour installer Python, sous windows, avec l'environnement de développement IDLE, il suffit de
télécharger puis d'exécuter le fichier d'installation qui se trouve sur le site officiel :
https://www.python.org/downloads/windows
Une fois installé, vous pouvez lancer IDLE en allant dans : Démarrer → Programmes → Python
→ IDLE (Python GUI)
Remarque : IDLE est un environnement de développement intégré fourni avec Python (bon
choix pour débutant).
IDLE propose un certain nombre d'outils :
▪ un éditeur de texte (pour l’écriture de script) avec une coloration syntaxique, une indentation
automatique et une auto complétion.
1|
▪ un interpréteur (pour exécuter le programme)
▪ Un débogueur (pour tester le programme)
Une fois installé, Python peut être utilisé en deux modes (mode script ou bien mode interactif)
Les instructions tapées sont exécutées directement par l’interpréteur python, c’est aussi le mode
calculatrice.
Les commentaires commencent en python par #
2|
▪ Le type réel : <classe float>
>>> x=8.2;y=3.5
>>> type(x), type(y)
…………………………………
▪ Le type complex : <classe complex>
Les complexes s’écrivent sous la forme : a + bj. Le réel b doit être spécifié, même si b=1, et
accolé à la lettre j. Par exemple 1+1j désigne le complexe 1+i
>>> z=8+2j
>>> type(z)
…………………………
>>>id(z)
……………..
>>>z.conjugate()
……………….
>>>z.imag
…………………..
>>>z.real
……………………………..
Opérations élémentaires sur les booléens
>> x=3 ; y=4 ;
>>> B=x==y
>>> B
………………..
>>> E=x<y
>>> E
……………………..
>>>B&E # on peut utiliser and
………………
>>>B|E #on peut utiliser or
………….
>>>not B # négation de B
……………………..
>>>int(B)
……………………
Les opérateurs de comparaison qu’on peut appliquer sur les entiers sont les mêmes que pour les
réels.
Opérations élémentaires sur les entiers, les réels, les complexes
>>> x*y #produit de deux entiers, réels, complexes >>>x. mul (y)
……………………………………. ………………….
3|
>>>x-y #différence de deux entiers, réels, complexes >>>x . sub (y)
…………………………….. ………………………………
>>>x**y# puissance de deux entiers, réels, >>>x. pow (y)
complexes ……………..
…………………………..
>>> x/y #division réelle de deux entiers, réels, >>>x. truediv (y)
complexes ………………
……………………….
>>>x%y # modulo (reste de la division >>>x. mod (y)
euclidienne) ………………………………….
…………………………..
>>>x//y #division entière (quotient de la division >>>x. floordiv (y)
euclidienne) ……………………….
………………..
>>>abs(x) # valeur absolue x. abs ()
…………………. ……………………..
>>>x= 5.2 x. int ()
>>>int(x) # valeur entière ……………………
…………………
L’utilisation de l’aide en ligne se fait par la commande help(identificateur). Par exemple, pour
voir l’aide de la classe int qui manipule les entiers, il suffit de taper
>>> help(int)
4|
……………………………………………………..
Pour voir l’aide d’une fonction, il suffit de taper help (<le nom de la fonction>) par exemple :
>>>help(math.ceil)
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………
▪ 2ème manière : Utilisation d’un alias
Parfois le nom de la bibliothèque est trop long, donc il vaut mieux utiliser un alias qui se refère sur
cette bibliothèque (par exemple matplotlib (la bibliothèque responsable de traçage des courbes)
>>>import math as m
>>>dir(m)
[' doc ', ' name ', ' package ', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil',
'copysign', 'cos',………, 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']
>>>math.ceil(7.8989)
…………………………………………………………………………………………………
>>>m.sqrt(2)
………………………………………………………………………………..
▪ 3ème manière : Importation de toutes les fonctions d’un module
>>>from math import *
>>>dir(math)
………………………………………………………………………………………..
>>>sqrt(2)
……………………………………………………
1. L’affectation
L’affectation désigne l’opération par laquelle on établit un lien entre le nom de la variable et sa valeur.
L’opération d’affectation est représentée par le signe égal. En Python, il n’est pas nécessaire définir le
type des variables avant de pouvoir les utiliser. Il vous suffit en effet d’assigner une valeur à un nom
de variable pour que celle-ci soit automatiquement créée avec le type approprié.
>>>x=5, id(x) # x est une variable de type entier, id désigne l’adresse mémoire de x
>>>pi=3.14159 # pi est une variable de type float
• Affectations multiples
En Python, on peut faire :
>>> x = y = 7
>>>x,y,z=1,5,6.5 # x est de type int, y est de type int , z est de type float
>>>a, b = 7.3, 12 # a est de type float, b est de type int
>>> y = 3*a + b/5 #y le résultat d’une expression qui combine les opérateurs *, + et / avec les
opérandes a, b, 3 et 5
2. L’affichage : print
5|
………………………………………
>>>print (x, y, z, sep=';')
………………………………………..
>>>print (x, y, z , sep='\n')
……………..
……………
…………….
>>>print ('x =', x,'y =',y, 'z =', z, sep= ' ' , end =';')
……………………………………………………………
Remarque : sep désigne le caractère de séparation et end désigne le caractère de marquage de fin.
Une nouvelle fenêtre s’ouvre. On écrit donc notre code Python puis on l’enregistre dans un fichier
d’extension .py (par exemple test.py).
Une fois enregistré, on peut l’exécuter notre code en faisant Run>Run Module
6|
Application 1
Ecrire un script python qui permet de :
- saisir le rayon d’un cercle de type réel,
- de calculer et afficher le périmètre du cercle
Application 2
Ecrire un script python intitulé « SOMME_CARREE » qui permet :
- de saisir un entier N (supposé composé de trois chiffres)
- de calculer et afficher la somme S des carrés des chiffres de N.
Exemple : N = 324 donc S = 32 + 22 + 42 = 29.
X. Les structures conditionnelles
if condition1:
Traitement 1
elif condition2 :
Traitement 2
elif condition3 :
Traitement 3
………………….
……………………
else :
Traitement_par défaut
Attention : N’oubliez pas les double-points, et faites attention à l’indentation !
Application 3 :
Ecrire un programme qui saisit un nombre et teste si l’entier est nul, pair ou impair
1. La boucle for
Syntaxe 1
for i in range(a):
instructions
▪ range (a) désigne l’intervalle [0,a[
Syntaxe 2
• for i in range(a,b):
instructions
▪ range (a,b) désigne l’intervalle [a,b[
7|
Syntaxe 3
• for i in range(a,b,c):
instructions
▪ range (a,b,c) désigne l’intervalle [a,b[ par pas entier égal à c
Syntaxe 4
• for i in iter:
instructions
▪ La quatrième syntaxe est un parcours par élément que nous pourrons effectuer avec les
itérables tel que les listes, les tuples, les chaînes de caractères ou même les fichiers…
Exemple : Tapez ces trois bouts de code et écrivez vos remarques
1)
for i in range(5):
if(i**2==4):
continue
else:
print(i)
………………………………………
………………………………………
……………………………………
2)
for i in range(1,5):
print(i**2)
………………
………………
……………..
………………
3)
for i in range(1,7,2):
print(i)
………………
………………….
……………………
……………………
Application 4:
Un nombre parfait est un entier positif supérieur à 1, égal à la somme de ses diviseurs ; on ne
compte pas comme diviseur le nombre lui-même.
Exemple : 6 est un nombre parfait puisque : 6 = 3 + 2 + 1.
Ecrire un programme python qui détermine si un entier N est parfait ou non.
2. La boucle tant que
Syntaxe
while condition:
instructions
8|
Exemple:
i=1
while i<=5:
print(i)
i=i+1 # ou bien on peut écrire i+=1
Remarque : Il n’existe pas un équivalent de la boucle répéter en python, mais on peut utiliser la
boucle while pour la saisie contrôlée des données :
while(True):
n=int(input("saisir un entier décimal positif : "))
if(n>0):
break
Application 5 :
Ecrire un programme python qui permet de saisir un entier positif Nd et de le convertir vers un
nombre binaire Nb.
Exemple: Si Nd = 7, alors Nb = 111 -> (7)10 = (111)2
Application 6 :
Un nombre est dit premier s'il est divisible uniquement par 1 et par lui-même.
Exemple : n=2 est un nombre premier car il est divisible uniquement par 1 et par lui-même
Ecrire un programme python qui permet de déterminer si un nombre n est premier ou non.
9|