Conventions Algorithmiques &
Implémentation en Python
10. Les fonctions et les procédures sur les fichiers
10.1. Les fonctions et les procédures sur les fichiers de données (typés)
Notation algorithmique Notation en Python Rôle
Ouvrir("Chemin\ Nom_Logique = Ouverture d’un fichier.
Nom_Physique", open("Chemin\
Nom_Logique, "Mode") Nom_Physique", "Mode") Mode d’ouverture :
• "rb" : Lecture
• "wb" : Écriture (Création)
• "ab" : Écriture à la fin du
fichier
Lire(Nom_Logique, Objet) import pickle as pic Lecture d’un
Objet = enregistrement d’un fichier.
[Link](Nom_Logique)
Écrire(Nom_Logique, Objet) import pickle as pic Écriture dans un fichier.
[Link](Objet,
Nom_Logique)
Fin_Fichier(Nom_Logique) Pas de correspondance Retourner VRAI si le
pointeur est à la fin du
fichier sinon elle retourne
FAUX.
Fermer(Nom_Logique) Nom_Logique.close() Fermeture du fichier.
N.B. :
• La position initiale du pointeur dans un fichier de données est Zéro.
• Les traitements sont réalisés dans la mémoire centrale.
Fonction Nombre_mot (ch : chaîne) : entier
Début
nbm <- 1
Pour i de 0 à long(ch) -1 Faire
Si ch[i] = "U" Alors
nbm <- nbm + 1
FinSi
FinPour
Retourner nbm
Fin
T.D.O
Objet Type/Nature
i Entier
nbm Entier
Fonction Comptage (nomphy : chaîne) : entier
Début
Ouvrir(nomphy, f, "r")
nbmot <- 0
Tantque Non Fin_Fichier(f) Faire
Lire_nl(f, ch)
ch1 <- Nettoyage(ch)
nbmot <- nbmot + Nombre_mot(ch1)
FinTantque
Fermer(f)
Retourner nbmot
Fin
T.D.O
Objet Type/Nature
f Fichier Texte
ch Chaîne
ch1 Chaîne
nbmot Entier
Nettoyage Fonction
Nombre Mot Fonction
# Fonction Nombre_mot pour calculer le nombre de mots dans une chaine.
# Sachant que nombre de mots = nombre d’espaces + 1
def Nombre_mot(ch):
nbm = 1
for i in range(0, len(ch) - 1):
if ch[i] == " ":
nbm = nbm + 1
return nbm
# Fonction Comptage pour calculer le nombre de mots dans le fichier
def Comptage(nomphy):
f = open(nomphy, "r")
nbmot = 0
ch = [Link]()
while ch != "":
ch1 = Nettoyage([Link]())
nbmot = nbmot + Nombre_mot(ch1)
ch = [Link]()
[Link]()
return nbmot
Algorithme du programme principal
ALGORITHME Mot
DÉBUT
nomphy <- "C:\Bac2022\[Link]"
Remplissage_Fichier(nomphy)
Écrire("Le nombre de mots dans le fichier = ", comptage(nomphy))
FIN
T.D.O
Objet Type/Nature
nomphy chaîne
Remplissage Fichier Procédure
Comptage Fonction
Affichage Procédure
# Le programme principal
nomphy = "C:\Bac2022\[Link]"
Remplissage_Fichier(nomphy)
print("Le nombre de mots dans le fichier = ", Comptage(nomphy))