Cours Python Part1
Cours Python Part1
Cours Python Part1
Python est un langage de programmation open source créé par le programmeur Guido van
Rossum en 1991.
Il s’agit d’un langage de programmation interprété, qui ne nécessite donc pas d’être
compilé pour fonctionner. Un programme « interpréteur » permet d’exécuter le code
Python sur n’importe quel ordinateur. Ceci permet de voir rapidement les résultats d’un
changement dans le code. En revanche, ceci rend ce langage plus lent qu’un langage compilé
comme le C.
Types de données
Variables
Une variable est un emplacement nommé utilisé pour stocker des données dans la mémoire.
Il est utile de considérer les variables comme un conteneur contenant des données pouvant
être modifiées ultérieurement au cours de la programmation.
Déclaration
Pour créer une variable en Python, nous utilisons l'instruction d'affectation qui a le format
suivant : nom_variable = expression
Exemple: a=5
SIHAM YAQINE 1
Contrairement aux langages tels que C, C ++ et Java, en Python, nous ne déclarons pas le
type de la variable à l’avance.
Python détecte automatiquement le type de la variable et les opérations pouvant être
effectuées en fonction du type de la valeur qu'elle contient.
1
>>> a=2
2 >>> type(a)
3 < class 'int'>
4 >>> a="bonjour"
5 >>> type(a)
< class 'str'>
6
>>>
7
Règles de nommer des variables
En Python, nous avons les règles suivantes pour créer un nom de variable valide.
• Seules les lettres (a-z, A-Z), le trait de soulignement (_) et les chiffres (0 à 9) sont
autorisés à créer des noms de variable, rien d'autre.
• Le nom de la variable doit commencer par un trait de soulignement (_) ou une lettre.
• Vous ne pouvez pas utiliser de mots-clés réservés pour créer des noms de variables.
• Un nom de variable peut être de n'importe quelle longueur.
Affectation simultanée
Nous pouvons affecter des valeurs à plusieurs variables à la fois en utilisant l'affectation
simultanée qui a la syntaxe suivante:
var1, var2, var3, ... varN = exp1, exp2, exp3, ... expN
Lorsque Python rencontre une instruction d'affectation simultanée, il évalue d'abord toutes
les expressions du côté droit, puis affecte leur valeur aux variables correspondantes à
gauche. Par exemple:
>>> a,nom,b = 2,"Sami",3.5
>>> a
2
>>> nom
'Sami'
>>> b
3.5
Si nous voulons attribuer la même valeur à plusieurs variables à la fois, nous pouvons le faire
comme suit:
>>> a=b=c=4
>>> a
4
>>> b
4
>>> c
4
SIHAM YAQINE 2
LES ENTRÉES/SORTIES (EN PYTHON)
Les entrées
Dans un programme, il est très pratique de pouvoir demander à l’utilisateur de saisir une
chaîne de caractères.
Pour cela, Python dispose d’une instruction : input().
input()
Cette instruction va renvoyer une chaîne de caractères.
Ainsi, si l’utilisateur tape l’entier 25, le résultat initial est ’25’.
Exemple :
1 >>> a=int(input("Saisir une valeur : "))
2 Saisir une valeur : 5
3 >>> a
4 5
SIHAM YAQINE 3
Les sorties
L’instruction principale est print qui permet d’afficher surtout des chaînes de caractères.
Cependant, comme pour l’instruction input(), si on lui demande d’afficher un entier, il va
automatiquement convertir l’entier en chaîne de caractères pour pouvoir l’afficher.
Encore une fois, il est plus clair d’écrire cette conversion en utilisant l’instruction repr().
A noter que l’instruction print provoque un saut de ligne (comportement par défaut). Pour
écrire une suite de chaînes de caractères, on pourra utiliser la concaténation de chaînes en
utilisant l’opérateur « + ».
Exemples :
>>> mot1="Romane"
>>> print(mot1)
Romane
>>> mot2="Lucie"
>>> print(mot2)
Lucie
>>> print(mot1 + " et "+ mot2)
Romane et Lucie
Fonction print()
Pour afficher quelque-chose sur la console, on utilise la fonction print() dont la syntaxe
générale est :
• valeur(s) : N'importe quelle valeur sera convertie en chaîne avant d'être affichée à
l'écran
• sep = ’separator’: (Facultatif) Spécifiez comment séparer les objets s’il y en a plus d’un.
Par défaut: '' (vide)
• end = ’end’: (Facultatif) Spécifiez ce qu’il faut afficher à la fin. Par défaut: '\n' (retour à
la ligne)
• file: (Facultatif) Un objet avec une méthode d'écriture. Par défaut: sys.stdout
• flush: (Facultatif) Un booléen, spécifiant si la sortie est vidée (True) ou mise en tampon
(False). Par défaut: False
SIHAM YAQINE 4
Exercice 1 : déclarer différents types de variables.
• La variable prenom qui doit contenir la chaîne de caractère Pierre.
• La variable age qui doit contenir le nombre 20.
• La variable majeure qui doit contenir un booléen vrai.
• La variable compte_en_banque qui doit contenir le nombre décimal 20135,384.
Exercice 2 :
Écrire un programme en python qui demande à l’utilisateur de saisir deux nombres et qui
affiche leur somme.
SIHAM YAQINE 5
Opérateurs de base
SIHAM YAQINE 6
Ordre de priorité
L’ordre des opérations suit la règle PEMDAS (Parenthèses, Exposant, Multiplication et
Division, Addition et Soustraction).
Exemple :
>>> print(2*2+1)
5
>>> print(2*(2+1))
6
L’inégalité
>>> print(a != b)
True
>>> print(b != c)
False
Infériorité et supériorité
>>>x = 1
>>>y = 1
>>>z = 2
>>>print(x < y)
False
>>>print(x <= y)
True
>>>print(x > z)
False
>>>print(x >= z)
False
SIHAM YAQINE 7
ET logiques
>>>x = True
>>>y = True
>>>print(x and y)
True
>>>x = True
>>>y = False
>>>print(x and y)
False
>>>print(y and y)
False
OU logiques
>>> x = True
>>>y = False
>>>print(x or y)
True
>>> x = False
>>>y = False
>>>print(x or y)
False
Non logique
>>> x = True
>>>y = False
>>>print(not x)
False
>>>print(not y)
True
Quelques fonctions
Python dispose de nombreuses fonctions utiles pour manipuler les structures et données. Le
tableau suivant en répertorie quelques-unes. Certaines nécessitent le chargement de la
librairie math.
Fonction Description
SIHAM YAQINE 8
math.factorial() Factorielle de x
math.gcd(x, y) Plus grand commun diviseur de x et y
Quelques constantes
Fonction Description
math.pi Le nombre Pi (π)
math.inf L’infini (∞)
-math.inf Moins l’infini (−∞)
Conditions
Syntaxe 1:
if condition:
Instruction A
SIHAM YAQINE 9
Exemple3 avec condition vraie :
x=5
if x > 0:
print(x, "est plus grand que 0")
print("il est strictement positif")
print("Fin")
Syntaxe 2: if … else
if condition:
Instruction A
else:
Instruction B
SIHAM YAQINE 10
Exemple1 : la condition est vraie :
x=5
if x > 0:
print(x, "est positif")
else:
print(x, "est négatif ou nul")
print("Fin")
Exercice :
Écrire un programme python qui permet de saisir la moyenne d’un stagiaire puis affiche la
décision :
- Succès si la moyenne est supérieure ou égale à 10.
- Échec si la moyenne est inférieure ou égale à 10.
Syntaxe 3: if … elif
if condition:
instructions
elif condition _2:
instructions_2
elif condition _3:
instructions_3
else:
autres_instruction
Exemple :
temperature = -4
chaleur = ""
SIHAM YAQINE 11
else:
chaleur = "très froide"
Exercice :
Écrire un programme python qui permet de résoudre l’équation ax+b=0 en R.
Boucles
Boucle while()= Tant que
les instructions à l’intérieur de la boucle seront répétées tant qu’une condition est
respectée.
La syntaxe:
while condition:
instructions
Exemple :
x = 100
while x/3 > 1:
print(x/3)
x = x/3
Exercice :
Écrire un programme en python qui demande à l’utilisateur un nombre entre 1 et 3 jusqu’à
ce qu’il convient.
Solution :
SIHAM YAQINE 12
Exercice :
Écrire un programme en python qui demande à l’utilisateur un nombre entre 10 et 20
jusqu’à la bonne réponse.
Au cas d’un nombre > à 20 afficher ‘’plus petit !’’
Au cas d’un nombre < à 10 afficher ‘’plus grand !’’
Solution :
Exemples :
>>> v = "Bonjour toi"
>>> for lettre in v:
... print(lettre)
...
B
o
n
j
o
u
r
t
o
i
SIHAM YAQINE 13
>>> for i in range(4):
... print(i)
...
0
1
2
3
for i in range(5):
print("Je suis votre formateur en Python")
Exercice :
Écrire un programme en python qui affiche la somme de la suite S=1+2+…+10
Solution :
somme=0
for i in range(11) :
somme+= i
print(somme)
Solution :
for x in range(6):
for y in range(6):
print((x,y))
Exercice :
Écrire un programme en langage python qui affiche les nombres entiers premiers entre 1 et
100.
NB : Un entier positif supérieur à 1 qui n’a pas d’autres diviseur que 1 et le nombre lui-même
s’appelle un nombre premier.
2, 3, 5, 7, etc. sont des nombres premiers car ils n’ont pas d’autres diviseur.
SIHAM YAQINE 14
Solution :
for n in range(2,101):
for i in range(2,n):
if (n % i) == 0:
break
else::
print(n)
Exercice :
Rédiger un programme factorielle.py qui calcule le nombre n! où n est une variable de type
int.
Solution :
Exemples : Break
i=0
while True:
print(i)
i=i+1
if i >= 4:
break
Affichage :
0
1
2
3
SIHAM YAQINE 15
Exemples :Continue
i = 10
while i > 0:
i = i -1
if i == 5:
continue
print(i)
Affichage :
9
8
7
6
4
3
2
1
Les Fonctions
Généralement on implémente une fonction lorsqu’un ensemble d’instructions risque d’être
utilisé plusieurs fois dans un programme.
La syntaxe :
def nom fonction(liste de paramètres):
bloc d'instructions
def compteur(stop):
i=0
while i < stop:
print(i)
i=i+1
Exécution :
compteur(4)
compteur(2)
SIHAM YAQINE 16
Fonction sans paramètre
def compteur3():
i=0
while i < 3:
print(i)
i=i+1
print("bonjour")
compteur3()
compteur3()
Affichage :
bonjour
0
1
2
0
1
2
SIHAM YAQINE 17
Exemple : Variable globale
Une variable globale: peut être utilisée n’importe où dans le code.
b=5
def show():
global b
b = 10
show()
print(b)
Affichage :
10
Exercice :
Déterminer la sortie de ce programme:
b = 10
def f1():
global b
b=3
def f2(p,q):
global b
`return p + q + b
f1()
res = f2(1,2)
print(res)
Solution :
6
Exercice :
Écrire une fonction cube qui retourne le cube de son argument.
Les procédures
Une procédure est un bloc d’instructions nommé et paramétré ,réalisant une certaine tâche.
Elle n’admet aucun, un ou plusieurs paramètres et ne renvoie pas de résultat en fin
d’exécution.
Par exemple print("\n") c’est une tâche à exécuter mais ne renvoie aucune valeur.
La syntaxe :
def nom_procédure(liste de paramètres):
bloc d'instructions
SIHAM YAQINE 18
Exemple :
def maprocedure():
print ("Fonction sans retour de valeur !")
maprocedure()
Exemple : c une procédure interactive qui ne renvoie rien mais affiche un résultat à l’écran.
Def somme() :
Print("on va calculer la somme de deux nombres")
a=float(input("saisir un nbr:"))
b=float(input("saisir un nbr:"))
Print("la somme est : ", a+b)
Exercice :
Écrire une procédure qui demande à l’utilisateur son nom et prénom, puis affiche
‘’Bonjour ...’’
Exercice 3 :
Écrire un programme qui permet de saisir un nombre puis déterminer s’il appartient à un
intervalle donné, sachant que les extrémités de l’intervalle sont fixées par l’utilisateur.
Exercice 4 :
Écrire un programme qui demande deux nombres à l’utilisateur et l’informe ensuite si leur
produit est négatif ou positif. Attention toutefois on ne doit pas calculer le produit des deux
nombres.
SIHAM YAQINE 19
Exercice 5 :
Écrire un programme qui permet de calculer le montant des heures supplémentaires d’un
employé, sachant le prix unitaire d’une heure, selon le barème suivant :
• Les 39 premières heures sans supplément,
• De la 40ième à la 44ième heure sont majorées de 50%,
• De la 45ième à la 49ième heure sont majorées de 75%,
• De la 50ième heure ou plus, sont majorées de 100%.
Exercice 6 :
Écrivez un programme qui lira au clavier l’heure et les minutes, et il affichera l’heure qu’il
sera une minute plus tard.
Par exemple, si l'utilisateur tape 21 puis 32, le programme doit répondre : "Dans une minute,
il sera 21 heure(s) 33".
NB : on suppose que l'utilisateur entre une heure valide. Pas besoin donc de la vérifier.
SIHAM YAQINE 20
Exercice 7 :
Écrire un programme qui à partir d’une note affiche la mention correspondante ?
Exercice 8 :
Écrire un programme qui permet de saisir un entier N et d'afficher s'il est premier ou non.
Un nombre est dit premier s'il est divisible uniquement par 1 et par lui-même.
SIHAM YAQINE 21
Ecrire programme permettant de lire un nombre entier N puis calcule son factoriel.
Exercice
Écrire un programme qui permet de calculer la moyenne de notes fournies au clavier avec
un dialogue de ce type :
• note 1 : 12
• note 2 : 15.25
• note 3 : 13.5
• note 4 : 8.75
• note 5 : -1
• moyenne de ces 4 notes : 12.37
Le nombre des notes n"est pas connu a priori et l"utilisateur peut en fournir autant qu"il le
désire. Pour signaler qu"il a terminé, on convient qu"il fournira une note fictive négative.
Celle-ci ne devra naturellement pas être prise en compte dans le calcul de la moyenne.
SIHAM YAQINE 22
Exercice 4
Ecrire un programme qui demande à l'utilisateur un nombre compris entre 1 et 3 jusqu'à ce
que la réponse convienne.
Exercice 5
Ecrire un programme qui demande un nombre compris entre 10 et 20, jusqu'à ce que la
réponse convienne. En cas de réponse supérieure à 20, on fera apparaître un message : "Plus
petit ! ", et inversement, " Plus grand !" si le nombre est inférieur à 10.
SIHAM YAQINE 23