Rappels sur fichiers

Les méthodes pour manipuler les fichiers sont les suivantes.

Exercice 1 : questions de cours

Question 1

Écrivez un petit programme Python qui crée un fichier test.txt contenant le texte "Python, c'est moins compliqué que Java.".

(Si le fichier test.txt existe déjà, il est remplacé.)

Question 2

Écrivez une procédure qui prend deux arguments : un nom de fichier et un numéro de ligne. La procédure affichera (avec print) la ligne correspondante (et seulement celle ci) du fichier.

Question 3

Écrivez une fonction qui compte le nombre de lignes présentes dans un fichier existant.

Question 4

Écrivez une fonction qui rajoute, à la fin d'un fichier existant, la ligne "Ce fichier contient n lignes.", où n est le nombre de lignes du fichier.

Exercice 2 : manipulations de fichiers

Question 1

Écrivez une fonction qui affiche la ligne la plus longue d'un fichier.

Question 2

Écrivez une fonction qui numérote les lignes non-vides d'un fichier.

Question 3

Écrivez une fonction qui transforme un fichier texte en fichier texte « double interligne » en rajoutant une ligne vide entre chaque ligne.

Question 4

Écrivez une fonction qui transforme un fichier texte en fichier texte « espace triple » en remplaçant chaque espace par trois espaces.

Exercice 3

Il y a de nombreuses manières de parcourir les lignes d'un fichier :


f = open(fichier, "r")
lignes = f.readlines()
for i in range(len(lignes)):
    ... quelque chose avec lignes[i] ...

f = open(fichier, "r")
lignes = f.readlines()
for l in lignes:
    ... quelque chose avec l ...

f = open(fichier, "r")
l = f.readline()
while l != "":
    ... quelque chose avec l ...
    l = f.readline()

f = open(fichier, "r")
for l in f:
    ... quelque chose avec l ...

Comparez les avantages et les inconvénients de ces méthodes.