0% ont trouvé ce document utile (0 vote)
56 vues19 pages

j1 Algorithmes Et Programmation en Python - HTML

Le document présente un cours sur les algorithmes et la programmation en Python, abordant des sujets tels que l'installation de Python, les types de variables, les opérations mathématiques, et les structures de données. Il inclut également des exercices pratiques et des exemples de code pour illustrer les concepts. La structure du cours est organisée par jour, avec des sessions théoriques et des travaux dirigés.

Transféré par

カルマ
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
56 vues19 pages

j1 Algorithmes Et Programmation en Python - HTML

Le document présente un cours sur les algorithmes et la programmation en Python, abordant des sujets tels que l'installation de Python, les types de variables, les opérations mathématiques, et les structures de données. Il inclut également des exercices pratiques et des exemples de code pour illustrer les concepts. La structure du cours est organisée par jour, avec des sessions théoriques et des travaux dirigés.

Transféré par

カルマ
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.

html

J1 - Algorithmes et Programmation en
Python
Journée du 17 Octobre 2023
Documentation : DevDocs

Installer Python**:** Python

Installer Visual Studio Code : Visual Studio Code

Obtenir des aides : Stack Overflow

Slide Donnée par le Professeur:

cours_algo_Python.pdf

Planning :
Mardi : Théorie
Mercredi : Cours suivi de Travaux Dirigés (TD)
Jeudi : Questionnaire à Choix Multiples (QCM) le matin, suivi de TD TP
Vendredi : TD TP et correction des TD TP notés

I. Algorithmes

Définition :
Un algorithme est un ensemble de règles opératoires permettant de résoudre un problème en
utilisant un nombre fini d'opérations.

Structure générale :

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 1/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

II. Python
Python est un langage de Programmation Orientée Objet (POO) créé en 1991 par Guido van
Rossum. Voici quelques caractéristiques de Python :
Il est interprété sans compilation.
Il est multiplateforme.
Il a une syntaxe simple.
Python est souvent décrit comme "un langage de programmation puissant et facile à
apprendre."

III. Installation de Python et Interpréteur


Pour commencer à utiliser Python, vous devez installer Python sur votre ordinateur. Une fois
Python installé, vous pouvez utiliser l'interpréteur Python pour exécuter du code Python. Les
premiers pas consistent à apprendre à utiliser l'interpréteur.

IV. Variables
Définition : Information identifiée par un nom ou une adresse, pouvant prendre une ou
plusieurs valeurs numériques, logiques ou alphanumériques pendant l'exécution d'un
programme.
En algorithmique :

nom_variable <- valeur


autre_variable <- nom_variable

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 2/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

En Python :

nom_variable = valeur
autre_variable = nom_variable

Exemples de déclarations de variables en Python :

age = 25 # Une variable "age" contenant la valeur 25


nom = "Alice" # Une variable "nom" contenant la chaîne de caractères "Alice"
taille = 1.75 # Une variable "taille" contenant la valeur 1.75
est_majeur = True # Une variable "est_majeur" contenant la valeur booléenne True

Types de variables :

Entier (int) : entier relatif (ex. : 1, 2, 0, -25)

Exemple d'utilisation d'une variable entière :

age = 25

Flottant (float) : nombre réel décimal (ex. : 1.0, 1.2, 3.14)

Exemple d'utilisation d'une variable flottante :

taille = 1.75

Caractères (string, str) : caractères et mots (ex. : 'hello world')

Exemple d'utilisation d'une variable de chaîne de caractères :

nom = "Alice"

Booléen (True, False)

Exemple d'utilisation d'une variable booléenne :

est_majeur = True

Nomination des variables :


Ne peut commencer par un chiffre.
Pas d'espaces, utilisez l'underscore (_).
N'écrivez pas de noms réservés utilisés par Python (ex. : and, or, if, elif, else, print, input,
etc.).

Exemple de conventions de nommage de variables en Python :

nom_complet = "Alice" # Utilisation de l'underscore pour des noms composés


age_utilisateur = 25 # Utilisation de l'underscore pour des noms composés

Opérations mathématiques :
Addition (+)
Soustraction (-)

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 3/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

Multiplication (*)
Division (/)
Division entière (quotient) (//)
Modulo : reste de la division (%)
Puissance (**)

Exemples d'opérations mathématiques :

a = 10
b = 3
addition = a + b # Addition de deux nombres : 13
soustraction = a - b # Soustraction de deux nombres : 7
multiplication = a * b # Multiplication de deux nombres : 30
division = a / b # Division de deux nombres : 3.3333333333333335
division_entiere = a // b # Division entière : 3
modulo = a % b # Reste de la division : 1
puissance = a ** b # Puissance : 1000

Opérations mathématiques sur des variables :


Incrémentation : Affecter à une variable sa valeur plus une valeur.
Décrémentation : Affecter à une variable sa valeur moins une valeur. Applicable aux
multiplications et aux divisions.

Exemples d'opérations mathématiques sur des variables :

x = 5
x += 3 # Incrémentation : x vaut maintenant 8
y = 10
y -= 2 # Décrémentation : y vaut maintenant 8
z = 7
z *= 4 # Multiplication : z vaut maintenant 28
w = 12
w /= 3 # Division : w vaut maintenant 4.0

V. Structures de Données
Liste :
Une liste peut contenir différents types de données (int, str, float, bool, list). Exemple : my_list
= []

Tuple :
Un tuple est une liste non modifiable. Exemple : my_tuple = ()

Dictionnaire :
Un dictionnaire est une structure de données qui associe des clés à des valeurs. Exemple :
my_dict = {}

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 4/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

Set :
Un ensemble (set) contient des éléments uniques. Il n'a pas de clé, UNIQUEMENT DES VALEURS.
Exemple : my_set = set()

Opérations sur les listes :


Récupérer un élément : Index commence toujours par zéro (ex. : my_list[0] ).
Ajouter un élément : my_list.append()
Enlever un élément : my_list.pop(index) ou my_list.remove(valeur)
Vérifier l'existence d'un élément : élément in my_list
Slicing : list[start:end:step] (ex. : my_list[:2] , my_list[1:2] , my_list[1:] )

Opérations sur les dictionnaires :


Récupérer un élément : my_dict.get(clé)
Ajouter un élément : my_dict['nouvelle_clé'] = valeur
Enlever un élément : my_dict.pop(clé)
Afficher les paires clé/valeur : my_dict.items()
Afficher les clés : my_dict.keys()
Afficher les valeurs : my_dict.values()

Exercices
1. Déclaration des différents types de variables.
2. Opérations mathématiques sur les entiers (ex. : 2 + 2 = 4 ).
3. Création de listes, de dictionnaires et de tuples.

Exemple avec un dictionnaire :

dict = {'nom' : 'Calcavecchia', 'prénom' : 'Axel', 'âge' : 18 }


dict['nom'] = 'Calcavecchia'
dict['prénom'] = 'Axel'
dict['âge'] = 18

VI. Fonctions Python


I. Affichage en Python
Afficher des messages, des variables, ou les deux.
Utilisation de print pour afficher des messages. Vous pouvez utiliser \n pour ajouter un
retour à la ligne.

Exemples :

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 5/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

print("Bonjour !\n j'espère que vous allez bien !") # Affiche "Bonjour!, saute une ligne,
puis affiche j'espère que vous allez bien !"
variable = 12
print(variable) # Affiche la valeur de la variable : 12

II. Types de Variables


Utilisation de type() pour connaître le type d'une variable. Il renvoie le type de la variable
sous la forme <class 'type'> .

Exemple :

taille = input() # Récupérer l'entrée de l'utilisateur (par exemple, 180)


print(type(taille)) # Affiche : <class 'str'> (car la saisie de l'utilisateur est une
chaîne de caractères)

III. Conversion de Types


Conversion d'une variable en un autre type.
En chaîne de caractères : str()
En entier : int()
En flottant : float()

Exemples :

a = 10 # Déclare la variable 'a' avec une valeur de 10


a_float = float(a) # Convertit 'a' en un flottant : 10.0
a_bool = bool(a) # Convertit 'a' en une valeur booléenne (True)

IV. Longueur des Données


Utilisation de len() pour connaître la longueur de différentes structures de données.

Exemple :

my_list = [1, 2, 3, 4, 5]
length_of_list = len(my_list) # Renvoie la longueur de la liste : 5

text = "Bonjour, monde !"


length_of_text = len(text) # Renvoie le nombre de caractères dans la chaîne : 15

my_dict = {'nom': 'Alice', 'âge': 25, 'ville': 'Paris'}


length_of_dict = len(my_dict) # Renvoie le nombre de paires clé/valeur : 3

VI. Conditions en Python

Instructions Conditionnelles :
SI... ALORS... : Exécute une action si une condition est vraie, puis passe au reste du code.

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 6/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

SI... ALORS... SINON... : Exécute une action si une condition est vraie, sinon exécute une autre
action, puis passe au reste du code.
SI... ALORS... SINON SI... ALORS... SINON... : Vérifie plusieurs conditions en séquence et exécute
la première action dont la condition est vraie.

Exemples de Conditions :
Exemple d'une structure de base de conditions :

x = 10
if x > 5:
print("x est supérieur à 5")
else:
print("x n'est pas supérieur à 5")

Comparateurs et Connecteurs Logiques :


Comparateurs :
Plus grand que : >
Plus petit que : <
Plus grand ou égal à : >=
Plus petit ou égal à : <=
Égal à : ==
Différent de : !=
Connecteurs Logiques :
Négation : not
Conjonction : and
Disjonction : or

Exemple d'utilisation de connecteurs logiques :

age = 25
if age >= 18 and age <= 21:
print("Vous êtes un adulte en France")
elif age < 18:
print("Vous êtes mineur.")
else:
print("Vous êtes un adulte à l'international.")

Algèbre de Boole (notion)

A B A ET B A OU B NON A

0 0 0 0 1

0 1 0 1 1

1 0 0 1 0
file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 7/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

1 1 1 1 0

Si A est vrai (1) et B est faux (0), alors A ET B sera faux (0), A OU B sera vrai (1), et NON A sera
faux (0).

Exercice 1 :
Récupérer votre âge dans le dictionnaire et afficher en fonction si vous êtes majeur en France, si
vous avez la majorité internationale ou autre :

# Dictionnaire avec l'âge


personne = {'âge': 18}

# Âge de la personne depuis le dictionnaire


age = personne['âge']

# Si la personne est majeure en France (18 ans et plus)


if age >= 18:
print("Vous êtes majeur en France.")

# Si la personne a la majorité internationale (21 ans et plus)


elif age >= 21:
print("Vous avez la majorité internationale.")
# Si la personne n'est ni majeure en France ni majeure internationale
else:
print("Vous êtes mineur.")

VII. Boucles
Boucle Tant que…
Exécute les actions de la boucle tant que la condition est vraie.
Très utile lorsque l'on ne connaît pas le nombre d'itérations.
Attention aux boucles infinies (le programme répète indéfiniment tant que la boucle n'est pas
fausse).

Exemple :

i = 0
while i < 10:
print(i)
i += 1

Boucle For
Permet de faire une itération sur une structure finie.
Ne dépend pas d'une condition.
Très utile pour parcourir un tableau ou un dictionnaire.

Exemple :
file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 8/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

for i in range(10):
print(i)

Comparaison entre boucle While et For

# Boucle While
i = 1
while i < 10:
print(i)
i = i * 2

# Boucle For
for i in range(5):
print(i * 2)

# Boucle For avec une liste


i = 0
my_list = ['un', 'deux', 'trois']
for i in my_list:
print(i)

Liste et dictionnaire compréhension


Création simplifiée d'une liste ou d'un dictionnaire avec une itération.

Exemple :

my_list = [i**2 for i in range(10)]


print(my_list)

my_list = [i**2 for i in range(10)]


print(my_list)

Exercice 1 :
Afficher le contenu d'une liste avec la boucle for (liste déclarée plus tôt).

ma_liste = [1, 2, 3, 4, 5]

for i in ma_liste:
print(i)

Exercice 2 :
Afficher les clés et les valeurs du dictionnaire contenant vos informations (nom, âge, ville).

dictionnaire = {'nom': 'Axel', 'âge': 18, 'ville': 'Montpellier'}

for cle, valeur in dictionnaire.items():


print(f"{cle} : {valeur}")

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 9/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

Exercice 3 :
Afficher 10 fois le message "Python est un langage génial" avec le numéro de ligne.

message = "Python est un langage génial"

for i in range(1, 11):


print(f"Ligne {i} : {message}")

VIII. Les fonctions personnalisées


Principes
Éviter la répétition de code.
Prend 0 à plusieurs arguments (valeurs utilisées uniquement dans la fonction).
Peut retourner une à plusieurs valeurs.
Peut afficher un simple message.

Exercice 1 :
Création d'une fonction qui affiche un message.

def fonction_bonjour():
return "Bonjour !"

print(fonction_bonjour())

Exercice 2 :
Création d'une fonction qui prend en paramètres votre poids et votre taille, et retourne votre
IMC (Indice de Masse Corporelle).

def imc(poids, taille):


return poids / (taille ** 2)

print(imc(69, 1.80))

IX. Script Python


Code Python dans un fichier
Vous pouvez écrire du code Python dans un fichier avec l'extension .py.
Vous pouvez écrire du code plus complexe, structuré et hiérarchisé pour des projets
importants.
Il est recommandé d'ajouter des commentaires pour expliquer votre code.

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 10/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

X. Modules et Packages
Modules Python
Un module Python est un fichier Python qui peut être importé dans un autre fichier Python.
Vous pouvez utiliser des éléments (variables, fonctions, etc.) depuis un autre fichier Python en
important le module.
La découpe du code en plusieurs fichiers offre une meilleure lisibilité, facilite la recherche
d'erreurs et simplifie l'exportation du code.

Utilisation des Modules


1. Créer un fichier **main.py** : C'est le fichier principal où vous écrirez principalement des
fonctions.
2. Écrire le code : Dans le fichier main.py , vous pouvez définir vos fonctions et structures de
données.
3. Dans un autre fichier Python (par exemple, **autre.py** ) : Vous pouvez importer le
module que vous avez créé dans main.py pour accéder à ses fonctions et données.
4. Importer le module :
Importation générale : import module
Importation spécifique : from module import fonction
5. Utiliser le module importé : Pour accéder aux éléments du module, utilisez module.element .

Packages
Les packages sont des ensembles de modules regroupés dans un même dossier. Ils fonctionnent
sur le même principe que les modules, mais il y a quelques différences :
L'importation est différente : package.module.element .
IMPORTANT : Pour qu'un répertoire soit reconnu comme un package, il doit contenir un
fichier __init__.py . Ce fichier peut être vide, mais sa présence est essentielle pour que
Python reconnaisse le dossier comme un package.
Pour installer un Package, utiliser la commade pip install (nom du package) Des fois, des
repos github nécessiteront d’installer un répertoire de packages, dans un fichier
requirements.txt, pour cela faire pip install -r requirements.txt

Exercices
1. Créer un fichier imc.py et y coller le code présent dans le fichier main.py
2. Importer la fonction de calcul d’imc dans le fichier main.py

XI. Environnement virtuel


Principes
Permettre d’avoir plusieurs versions de Python sur son PC (Actuellement, sur les machines
linux, 2 versions de python sont installées ; Python 2.7 et Python 3.10)

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 11/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

Installation des différentes versions de packages sans conflits


Évite les conflits de différentes versions de Python lors de l’exécution du code
Dans un environnement Linux, afin de créer un environnement virtuel, effectuer la
commande suivante : python3.XX (n° de version) -m venv venv source
venv/bin/activate Sur certaines distributions debian, il sera nécessaire d’installer
python3.XX-venv
apt install python3.XX-venv Où XX correspond au n° de version
Dans un environnement Windows, afin de créer un environnement virtuel, effectuer la
commande suivante :
C:\Users\%username%\AppData\Local\Programs\Python\Python3XX\python.exe XX
représente le N° de la version pip install virtualenv
faire cd (dossier souhaité)
virtualenv venv
cd DOSSIER VENV\venv\Scripts\
activate.bat

XII. Programmation Orientée Objet en Python


Introduction aux Classes et à l'Orienté Objet
La programmation orientée objet (POO) est un paradigme de programmation qui repose sur
la notion d'objets.
file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 12/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

En Python, tout est un objet. Les objets sont des instances de classes, qui sont des modèles
pour créer des objets.
La POO permet de structurer le code en regroupant des données (attributs) et des fonctions
(méthodes) qui opèrent sur ces données.

Création d'une Classe


1. Définition d'une Classe : Pour créer une classe, utilisez le mot-clé class , suivi du nom de la
classe, suivi de : . Par exemple : class MaClasse:
2. Constructeur **__init__** : La méthode __init__ est le constructeur de la classe. C'est là
que vous initialisez les attributs de la classe.
3. Méthodes : Les fonctions définies à l'intérieur de la classe sont appelées méthodes. Elles
opèrent sur les données de la classe.

Création d'Objets à partir d'une Classe


Pour créer un objet à partir d'une classe, utilisez le nom de la classe suivi de parenthèses,
comme ceci : objet = MaClasse() .
Chaque objet créé à partir de la classe est une instance de cette classe.

Attributs de Classe et Attributs d'Instance


Les attributs de classe sont partagés par toutes les instances de la classe.
Les attributs d'instance sont spécifiques à chaque instance de la classe.

Méthodes de Classe et Méthodes d'Instance


Les méthodes de classe agissent sur les attributs de classe.
Les méthodes d'instance agissent sur les attributs d'instance.

Encapsulation
L'encapsulation consiste à restreindre l'accès aux attributs et méthodes d'une classe.
En Python, les attributs et méthodes peuvent être publics (accès libre), privés (préfixés par _ ),
ou protégés (préfixés par __ ).

Héritage
L'héritage permet de créer une nouvelle classe en utilisant une classe existante comme
modèle.
La classe enfant hérite des attributs et méthodes de la classe parent.
Vous pouvez ajouter ou modifier des attributs et méthodes dans la classe enfant.

Polymorphisme
Le polymorphisme permet à des objets de différentes classes d'être traités de manière
similaire.
Les classes peuvent implémenter des méthodes du même nom, mais avec un comportement
différent.

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 13/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

Exemple de Classe en Python

class Animal:
def __init__(self, nom, age):
self.nom = nom
self.age = age

def parler(self):
pass

class Chien(Animal):
def parler(self):
return f"{self.nom} dit Woof!"

class Chat(Animal):
def parler(self):
return f"{self.nom} dit Miaou!"

Utilisation de Classes en Python

chien1 = Chien("Rex", 3)
chat1 = Chat("Félix", 2)

print(chien1.parler()) # Affiche "Rex dit Woof!"


print(chat1.parler()) # Affiche "Félix dit Miaou!"

XIII. Manipulation de Fichiers avec Python


Introduction à la Manipulation de Fichiers
La manipulation de fichiers est essentielle dans la programmation pour lire, écrire et traiter
des données stockées dans des fichiers.
Python offre des fonctions et des méthodes pour travailler avec des fichiers de différents
types, tels que les fichiers texte et les fichiers binaires.

Ouverture et Fermeture de Fichiers


1. Ouverture de Fichier : Pour ouvrir un fichier en lecture, écriture ou les deux, utilisez la
fonction open() .

fichier = open('mon_fichier.txt', 'r') # Ouverture en lecture ('r').

2. Fermeture de Fichier : Après avoir terminé de travailler avec un fichier, il est important de le
fermer avec la méthode close() .

fichier.close()

Lecture de Fichiers Texte


Vous pouvez lire le contenu d'un fichier texte ligne par ligne ou dans son intégralité.
Pour lire ligne par ligne, utilisez une boucle for :

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 14/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

with open('mon_fichier.txt', 'r') as fichier:


for ligne in fichier:
print(ligne)

Pour lire tout le contenu en une seule fois, utilisez la méthode read() :

with open('mon_fichier.txt', 'r') as fichier:


contenu = fichier.read()

Écriture dans des Fichiers Texte


Pour écrire dans un fichier texte, ouvrez-le en mode écriture ('w') ou ajout ('a') et utilisez la
méthode write() :

with open('nouveau_fichier.txt', 'w') as fichier:


fichier.write('Contenu à écrire dans le fichier.')

Gestion des Erreurs


Lors de la manipulation de fichiers, des erreurs peuvent survenir, notamment si le fichier
n'existe pas. Vous pouvez utiliser des blocs try et except pour gérer ces erreurs.

Manipulation de Fichiers CSV


Python offre des modules tels que csv pour faciliter la lecture et l'écriture de fichiers CSV
(Comma-Separated Values).

Manipulation de Fichiers JSON


Le format JSON (JavaScript Object Notation) est couramment utilisé pour stocker des
données structurées. Python propose le module json pour lire et écrire des fichiers JSON.

Manipulation de Fichiers Binaires


Les fichiers binaires contiennent des données non textuelles, comme des images, des vidéos
ou des fichiers exécutables. Vous pouvez les lire et les écrire en utilisant des fichiers binaires.

Utilisation de Gestionnaires de Contexte ( **with** )


L'utilisation de la clause with pour ouvrir des fichiers garantit que le fichier est
automatiquement fermé lorsque vous avez terminé de travailler avec lui.

Exemple de Lecture et d'Écriture de Fichiers


Lecture d'un fichier texte :

with open('mon_fichier.txt', 'r') as fichier:


for ligne in fichier:
print(ligne)

Écriture dans un fichier texte :

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 15/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

with open('nouveau_fichier.txt', 'w') as fichier:


fichier.write('Contenu à écrire dans le fichier.')

XIV. Utilisation du Module OS en Python


Introduction au Module OS
Le module os en Python offre des fonctionnalités pour interagir avec le système
d'exploitation, notamment pour la gestion de fichiers et de répertoires.
Vous pouvez utiliser ce module pour effectuer des opérations telles que la création, la
suppression, le déplacement et la recherche de fichiers et de répertoires.

Fonctionnalités Principales du Module OS


1. Manipulation de Fichiers et de Répertoires
os.getcwd() : Obtient le répertoire de travail actuel.
os.listdir(path) : Liste les fichiers et répertoires dans le chemin spécifié.
os.mkdir(path) : Crée un répertoire.
os.rmdir(path) : Supprime un répertoire vide.
os.remove(file) : Supprime un fichier.
os.rename(old, new) : Renomme un fichier ou un répertoire.
2. Changement de Répertoire
os.chdir(path) : Change le répertoire de travail actuel.
3. Vérification de l'Existence de Fichiers et de Répertoires
os.path.exists(path) : Vérifie si un fichier ou un répertoire existe.
os.path.isfile(path) : Vérifie si le chemin spécifié est un fichier.
os.path.isdir(path) : Vérifie si le chemin spécifié est un répertoire.
4. Manipulation de Chemins de Fichiers
os.path.join(path1, path2) : Combine deux chemins pour créer un chemin complet.
os.path.basename(path) : Renvoie le nom de base du chemin spécifié.
os.path.dirname(path) : Renvoie le répertoire parent du chemin spécifié.
os.path.split(path) : Divise un chemin en répertoire et nom de fichier.
5. Exécution de Commandes Système
os.system(command) : Exécute une commande système.

Exemples d'Utilisation du Module OS


Obtenir le répertoire de travail actuel :

import os
cwd = os.getcwd()
print("Répertoire actuel:", cwd)

Listage des fichiers et répertoires dans un répertoire :

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 16/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

import os
files = os.listdir('/chemin/vers/le/repertoire')
print("Fichiers et répertoires:", files)

Créer un répertoire :

import os
os.mkdir('/chemin/vers/le/nouveau/repertoire')

Renommer un fichier :

import os
os.rename('ancien_nom.txt', 'nouveau_nom.txt')

Vérifier si un fichier existe :

import os
if os.path.exists('mon_fichier.txt'):
print("Le fichier existe.")
else:
print("Le fichier n'existe pas.")

Exécuter une commande système :

import os
os.system('commande_systeme')

XV. Gestion des Erreurs et des Exceptions en Python


Introduction aux Erreurs et Exceptions
En programmation, les erreurs peuvent survenir à différents niveaux, notamment lors de
l'exécution du code. Les exceptions sont des objets qui représentent ces erreurs. Python gère
les erreurs et les exceptions de manière à empêcher l'arrêt brusque du programme.

Types d'Erreurs
1. Erreurs de Syntaxe : Ces erreurs se produisent lorsque le code ne respecte pas la syntaxe
du langage Python. Elles sont détectées lors de la phase de compilation. Un exemple
courant est l'oubli de deux-points ( : ) à la fin d'une instruction if ou else .
2. Exceptions : Les exceptions surviennent lors de l'exécution du code et peuvent être gérées
par le programme. Elles sont généralement causées par des événements imprévisibles, tels
que la division par zéro ou l'accès à un fichier inexistant.

Gestion des Exceptions avec **try** , **except** , **else** et **finally**


La gestion des exceptions permet au programmeur de gérer les erreurs de manière élégante
et de prendre des mesures appropriées.

1. Clause **try** :

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 17/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html

La clause try permet d'entourer un bloc de code potentiellement générant des exceptions.
Si une exception est générée dans ce bloc, le programme sautera à la clause except .

try:
# Code susceptible de générer une exception
resultat = 10 / 0
except ZeroDivisionError:
# Action en cas d'exception
print("Division par zéro.")

2. Clause **except** :
La clause except permet de spécifier le type d'exception à capturer et les actions à effectuer
en cas d'exception. Vous pouvez utiliser plusieurs clauses except pour gérer différents types
d'exceptions.

try:
# Code susceptible de générer une exception
resultat = int("abc")
except ZeroDivisionError:
# Action en cas d'exception de division par zéro
print("Division par zéro.")
except ValueError:
# Action en cas d'exception de conversion de type
print("Erreur de conversion de type.")

3. Clause **else** :
La clause else permet de spécifier des actions à effectuer si aucune exception n'est générée
dans le bloc try . Cela peut être utile pour traiter le cas où tout se passe bien.

try:
# Code susceptible de générer une exception
resultat = 10 / 2
except ZeroDivisionError:
# Action en cas de division par zéro
print("Division par zéro.")
else:
# Action si aucune exception n'est générée
print("Résultat :", resultat)

4. Clause **finally** :
La clause finally permet de spécifier des actions à exécuter quoi qu'il arrive, que des
exceptions se produisent ou non. C'est souvent utilisé pour la gestion des ressources, telles
que la fermeture de fichiers.

try:
# Code susceptible de générer une exception
fichier = open("mon_fichier.txt", "r")
contenu = fichier.read()
except IOError:
# Action en cas d'erreur d'entrée/sortie
file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 18/19
4/8/25, 1:05 PM j1-algorithmes-et-programmation-en-python.html
print("Erreur d'entrée/sortie.")
finally:
# Action à effectuer quel que soit le résultat
fichier.close()

Exemples de Gestion des Exceptions


Gestion d'une exception spécifique :

try:
# Code susceptible de générer une exception
resultat = 10 / 0
except ZeroDivisionError:
# Action en cas d'exception
print("Division par zéro.")

Gestion générique des exceptions :

try:
# Code susceptible de générer une exception
resultat = int("abc")
except Exception as e:
# Action en cas d'exception
print("Erreur :", str(e))

file:///C:/Users/ADMINI~1/AppData/Local/Temp/7zOC2C8A4D3/j1-algorithmes-et-programmation-en-python.html 19/19

Vous aimerez peut-être aussi