Vous êtes sur la page 1sur 23

Introduction

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

nom_variable est le nom de la variable


(=) est connu comme opérateur d'affectation
expression est juste une combinaison de valeurs, variables et opérateurs.

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’.

Si on veut convertir la chaîne de caractères en un entier, on pourra alors utiliser la


fonction int().
Si on veut convertir la chaîne de caractères en un entier, on pourra alors utiliser la
fonction float().
Une manière moins précise consiste à laisser Python choisir le type avec la fonction eval().
Exemples :
>>> mot1=input()
France
>>> print(mot1)
France
>>> mot2=input("Entrez un pays : ")
Entrez un pays : Japon
>>> print(mot2)
Japon
>>> nombre1=int(input("Entrez un nombre : "))
Entrez un nombre : 12
>>> nombre1+13
25
Exemple :
1 >>> a=input("Saisir une valeur : ")
2 Saisir une valeur : 5
3 >>> a
4 '5'
Ici, nous pouvons voir que la valeur entrée 5 est une chaîne, pas un nombre. Pour convertir cela en
un nombre, nous pouvons utiliser les fonctions int() ou float().
Exemple :
1 >>> a=input("Saisir une valeur : ")
2 Saisir une valeur : 5
3 >>> int(a)
4 5

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 :

print(valeur(s), sep= ‘ ‘, end = ‘\n’, file=file, flush=False)

• 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

Exemples des opérateurs mathématiques:


>>> 1+2 # la somme
3
>>> 1-10 # la soustraction
-9
>>> 2*10 # la multiplication, le résultat est entier
20
>>> 2.*10 # la multiplication, le résultat est réel
20.0
>>> 7//2 # la division entière
3
>>> 7/2 # la division décimale (comme une calculatrice)
3.5
>>> 10.0/3
3.3333333333333335
>>> 10/3.0
3.3333333333333335
>>> 10%4 # le modulo=reste de la division entière
2
>>> 2**3 # la puissance
8
>>>a=’toti’
>>>2*a # multiplication d’une chaîne= Python répète la chaîne
‘totitoti’

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

Exemples des opérateurs de comparaison et de logiques:


L’égalité
>>> a = "Hello"
>>> b = "World"
>>> c = "World"
>>> print(a == c)
False
>>>print(b == c)
True

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

La comparaison entre deux chaînes de caractères (selon l’ordre lexicographique)


>>>m_1 = "mange"
>>>m_2 = "manger"
>>>m_3 = "boire"
>>>print(m_1 < m_2) # mange avant manger
True
>>>print(m_3 > m_1) # boire avant manger
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

math.fabs(x) Valeur absolue de x


math.exp(x) Exponentielle de x
math.log(x) Logarithme naturel de x (en base e)
math.log10(x) Logarithme en base 10 de x
math.pow(x,y) x élevée à la puissance y
math.sqrt(x) Racine carrée de x
math.fsum() Somme des valeurs de x
math.sin(x) Sinus de x
math.cos(x) Cosinus de x
math.tan(x) Tangente de x

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

Condition : une expression booléenne, c’est-à


dire une expression qui prend pour valeur
True (Vrai) ou False (Faux).

L’instruction A n’est exécutée que si la


condition est vérifiée (Vrai).

Exemple1 avec condition vraie :


x = 15
if x > 10:
print(x, "est plus grand que 10")
print("Fin")

Affichage après exécution :


15 est plus grand que 10
Fin

Exemple2 avec condition fausse :


x=3
if x > 10:
print x, "est plus grand que 10"
print "Fin"

Affichage après exécution :


Fin

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")

Affichage après exécution :


5 est plus grand que 0
il est strictement positif
Fin

Exemple4 avec condition fausse :


x = -2
if x > 0:
print(x, "est plus grand que 0")
print("il est strictement positif")
print("Fin")

Affichage après exécution :


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")

Affichage après exécution :


5 est strictement positif
Fin

Exemple2 : la condition est fausse :


x = -2
if x > 0:
print(x, "est positif")
else:
print(x, "est négatif ou nul")
print("Fin")

Affichage après exécution :


-2 est négatif ou nul
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 = ""

if temperature > 28:


chaleur = "chaude"
elif temperature <= 28 and temperature > 15:
chaleur = "tempérée"
elif temperature <= 15 and temperature > 0:
chaleur = "froide"

SIHAM YAQINE 11
else:
chaleur = "très froide"

print("La température est " + chaleur)

Affichage après exécution :


La température est 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

Affichage après exécution :


33.333333333333336
11.111111111111112
3.703703703703704
1.234567901234568

Exercice :
Écrire un programme en python qui demande à l’utilisateur un nombre entre 1 et 3 jusqu’à
ce qu’il convient.

Solution :

Nb =int( input (" saisir un nombre "))


while Nb<1 or Nb>3:
Nb = int ( input (" saisir un nombre "))
print (" bravo ")

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 :

Nb =int( input (" saisir un nombre "))


while Nb<10 or Nb>20:
if Nb<10:
Nb = int(input(" plus grand "))
else :
Nb = int(input(" plus petit "))
print(" bravo ")

Boucle for()= pour


Quand on connaît le nombre d’itérations à l’avance, on pourra utiliser une boucle for().
La syntaxe:
for var in valeurs_possibles:
instructions

var : une variable


valeurs_possibles : peut-être une chaîne de caractères, une liste, un tuple, un dictionnaire
ou autre type.

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")

"Je suis votre formateur en Python"


"Je suis votre formateur en Python"
"Je suis votre formateur en Python"
"Je suis votre formateur en Python"
"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)

Exercice : Boucles for imbriquées


Écrire un programme en python qui affiche tous les couples (x,y) possibles avec x et y des
entiers entre 0 et 5.

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 :

valeur=int(input("Saisir une valeur de type entier"))


total=1
for i in range(1,valeur+1):
total=int(total)*i
print(total)

Les mots clés "break" et "continue"


break est utilisé pour quitter une boucle while/for, alors que
continue est utilisé pour ignorer le bloc actuel et revenir à
l’instruction while/for.

Exemples : Break
i=0
while True:
print(i)
i=i+1
if i >= 4:
break
Affichage :
0
1
2
3

for val in "BonjouID":


if val == "j":
break
print(val)
Affichage :
B
o
n

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

Exemple : Fonction avec paramètre


def SomProd(n1, n2) :
return(n1+n2, n1*n2) #cette fonction calcule la somme et le produit de n1 et n2
Exécution :
>>>SomProd(2,3)
(5,6)
NB : La commande return permet de renvoyer un résultat obtenu par la fonction pour
pouvoir l'utiliser dans la suite du programme. Elle est fondamentalement différente de print
qui ne fait que l'afficher à l'écran

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

Variable locale et globale


Une variable globale peut être atteinte n’importe où dans le code, une variable locale
uniquement à l’intérieur d’un bloc de code.

Exemple : Variable locale


Les variables locales ne peuvent être atteintes que dans leur portée. L’exemple ci-dessous a
deux variables locales: a et b.
def add(a, b):
res = a + b
return res
print(add(1,3))
print(a)
Affichage :
NameError: name 'a' is not defined # a n’existent pas en dehors de la fonction.

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

Vous aimerez peut-être aussi