0% ont trouvé ce document utile (0 vote)
136 vues3 pages

Programmation des fichiers en Python

Le document décrit les fichiers texte en algorithmique et en Python. Il présente les opérations de base sur les fichiers comme l'ouverture, la fermeture, la lecture, l'écriture et le test de fin de fichier. Trois exercices sur les fichiers sont également proposés.

Transféré par

Abdelkader Barraj
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)
136 vues3 pages

Programmation des fichiers en Python

Le document décrit les fichiers texte en algorithmique et en Python. Il présente les opérations de base sur les fichiers comme l'ouverture, la fermeture, la lecture, l'écriture et le test de fin de fichier. Trois exercices sur les fichiers sont également proposés.

Transféré par

Abdelkader Barraj
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

Professeur Abdelkader BARRAJ 4SI - Programmation

II/Les Fichiers :

1- Présentation du problème
Les structures de données utilisées jusqu’à présent (…………………………………………………
…………………………………………………………..) ne peuvent pas garder les données de façon
permanente c’est-à-dire une fois on redémarre l’ordinateur les données seront ………………………
Pour garder les données de façon permanente, il faut utiliser une nouvelle structure qui s’appelle
……………………………………
2- Définition :

Un Fichier Est une structure de données pouvant sauvegarder


les données de façon permanente (≠temporaire).

1. En programmation, on distingue deux types de fichiers :


• Les fichiers ………………………………………..
• Les fichiers ………………………………………..
2. Un fichier possède deux noms : un nom …………………… et un nom ……………………..
3. Chaque fichier doit être enregistré sur un support de stockage physique (disque dur, flash, …)

3- Les fichiers texte :


3.1 / Déclaration algorithmique d’un fichier texte:
En algorithmique Exemple
Tableau de Déclaration des Objets TDO
Objet Type / nature Objet Type / nature
Nom_logique Texte F Texte

Mode d’ouverture :
• "r" : …………………………………………….…….
3.2 / Commandes de manipulation d’un fichier texte: • "w" : ………………………………………………….
• Ouverture : • "a" : …………………………………………….…….

En algorithmique En python
Ouvrir("chemin\nom_physique", nom_logique,"mode") nom_logique=open(" chemin\nom_physique ", "mode")

Exemple : Exemple :
Ouvrir("[Link]", F ,"w") ………………………………………………….

• Fermeture :
En algorithmique En python
Fermer(nom_logique) nom_logique.close()
Exemple : Exemple :
Fermer(F) ……………………………..

C.R.E Mahdia - Lycée Souassi 1


Professeur Abdelkader BARRAJ 4SI - Programmation

• Lecture :

En algorithmique En python
Lire (nom_logique, ch) ch=nom_logique.read()

Exemple : Exemple :
Lire(F, ch) ………………………………………………
Lecture de la totalité d’un fichier

En algorithmique En python
Lire_ligne (nom_logique, ch) ch=nom_logique.readline()

Exemple : Exemple :
Lire_ligne(F, ch) …………………..………………………………

Lecture d’une seule ligne du fichier et placer le curseur sur la ligne suivante

• Ecriture :
En algorithmique En python
Ecrire (nom_logique, ch) nom_logique.write(ch)
Ecriture de la chaine ch sans retour à la ligne
Exemple : Exemple :
Ecrire(F, ch) [Link](ch)
Ecriture de la chaine ch puis retour à la ligne
[Link](ch + "\n")

Après la lecture ou l’écriture d’une ligne le pointeur interne (curseur) du fichier …………….….
automatiquement vers la ligne suivante.

• Test de Fin de fichier : Retourne Vrai si le pointeur est à la fin du fichier sinon elle retourne Faux.
En algorithmique En python
Fin_fichier (nom_logique,)

Exemple : Pas de correspondance


Fin_fichier(F)

Exercice 1 :
On vous demande de remplir un fichier nommé physiquement C:\[Link] et logiquement F par N
entiers positifs de 3 chiffres chacun (avec 5 <N < 20) . Puis d’afficher tous les entiers
cubiques qui se trouvent dans le fichier F.

Sachant qu’un entier naturel est dit cubique s’il est égal à la somme des cubes de ses 3 chiffres :
Exemple d’entiers cubique : 153 = 13+53+33 (407 est un entier cubique)
Travail à faire :
1- Donner l’algorithme du programme principal et n’oublier pas de déclarer les différentes structures
de données nécessaires pour résoudre ce problème.
2- Faire les algorithmes des différents modules envisagés ainsi que les TDOLs si nécessaire.

1- Lorsque les opérations sur un fichier sont terminées, il faut le fermer en utilisant la
commande : Fermer(nom_logique).
2- En python on peut utiliser la commande suivante qui ferme le fichier automatiquement après
utilisation : with open (" chemin\nom_physique ", "mode") as nom_logique
Exercice 2 :
Pour sécuriser l'envoi de messages, deux chercheurs cryptent leurs messages en utilisant une clé
de cryptage selon le principe suivant :

Remplacer chaque lettre du message msg d'indice i par la lettre minuscule d'ordre
alphabétique k sachant que :
 k =ABS (ord(msg[i]) – ord(cle[i])) + 1
 L'espace ne sera pas crypté.
Exemple : soit le message suivant : "bonne reception" et soit la clé "homeofhappiness"

Message : b o n n e r e c e p t i o n
La clé de cryptage : h o m e o f h a p p i n e s s
Message crypté : g a b j k k e n l h g e e f
En effet :
 La lettre "b" sera remplacé par la lettre d’ordre alphabétique k =ABS (ord("b") - ord("h")) + 1
qui est "g".
En effet, k = ABS (98-104) +l = 7 qui est l'ordre alphabétique de la lettre "g".
 La lettre "o" sera remplacé par la lettre d’ordre alphabétique k =ABS (ord("o") - ord("o")) + 1
qui est "a".
En effet, k = ABS (111-111) +1 = 1 qui est l'ordre alphabétique de la lettre "a".
etc.
Sachant que :
- Le message à crypter msg, est composé par des lettres minuscules et des espaces
- La clé de cryptage cle est une chaîne formée uniquement par des lettres minuscules et
ayant la même longueur que le message à crypter.
Ecrire un programme permettant de réaliser les taches suivantes :
1) Saisir une clé valide
2) Remplir le fichier « [Link] » par n messages valides (n compris entre 2 et 10) à raison d’un
message par ligne.
3) En utilisant le principe ci-dessus, Crypter les messages se trouvant dans le fichier « [Link] »
dans un autre fichier « [Link] ».
4) Afficher le continue du fichier « [Link] »

Exercice 3 :
On désire faire un programme Pascal intitulé PALINDROME qui permet de:
1- Remplir un fichier texte D:\[Link] par des chaînes de caractères à raison d’une chaine par ligne.
(La saisie s’arrête une fois la réponse à la question ''autre saisie O/N ? '' est ''N'' ou ''n'' ). Sachant que
chaque chaine de caractères doit être non vide et formée au maximum par 7 caractères.
2- Afficher toutes les chaines palindromes qui se trouvent dans le fichier D:\[Link]
Remarque :
Une chaine palindrome est une chaine qui peut être lue de droite à gauche ou de gauche à droite.
Exemple de chaines palindromes : radar, AzizA, sos, (2+2) ….

Vous aimerez peut-être aussi