Exercice Corrigé: Les fichiers en Python – Partie 1

Avec des exercices corrigés en Python, vous pratiquerez divers concepts du langage Python. Vous commencerez par des exercices Python de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
 
 

Exercice 1:

Écrire un programme Python pour lire un fichier texte complet.

Solution:

def lire_fichier(nom_fichier):
        fichier = open(nom_fichier)
        print(fichier.read())

lire_fichier('test.txt')

Explication:

Pour ouvrir un fichier, utilisez la fonction intégrée open(). La fonction open() renvoie un objet de type file, qui possède une méthode read() pour lire le contenu du fichier.

 

Exercice 2:

Écrire un programme Python pour lire les N premières lignes d’un fichier.

Solution:

def lire_n_lignes(nom_fichier, nlines):
        from itertools import islice
        with open(nom_fichier) as f:
                for line in islice(f, nlines):
                        print(line)

# Lire les 2 premières lignes du fichier test.txt
lire_n_lignes('test.txt',2)
 

Exercice 3:

Écrire un programme Python pour ajouter du texte à un fichier et afficher le texte.

Solution:

def lire_fichier(nom_fichier):
        from itertools import islice
        with open(nom_fichier, "w") as f:
                f.write("Hello World!\n")
                f.write("Welcome To WayToLearnX!")
        fichier = open(nom_fichier)
        print(fichier.read())

lire_fichier('test.txt')
 

Exercice 4:

Écrire un programme Python pour lire les N dernières lignes d’un fichier.

Solution:

import sys
import os

def lire_n_dernier_line(name,lines):
    bufsize = 8192
    fsize = os.stat(name).st_size
    iter = 0
    with open(name) as f:
        if bufsize > fsize:
            bufsize = fsize-1
            data = []
            while True:
                iter +=1
                f.seek(fsize-bufsize*iter)
                data.extend(f.readlines())
                if len(data) >= lines or f.tell() == 0:
                    print(''.join(data[-lines:]))
                    break

# Lire les 2 dernières lignes du fichier test.txt
lire_n_dernier_line('test.txt',2)
 

Exercice 5:

Écrire un programme Python pour lire un fichier ligne par ligne et le stocker dans une liste.

Solution:

def lire_fichier(name):
        with open(name) as f:     
                ma_liste = f.readlines()
                print(ma_liste)

lire_fichier('test.txt')
 

Exercice 6:

Écrire un programme Python pour lire un fichier ligne par ligne et le stocker dans une variable.

Solution:

def lire_fichier(name):
    with open(name, "r") as f:
        data = f.readlines()
        print(data)

lire_fichier('test.txt')
 

Exercice 7:

Écrire un programme Python pour lire un fichier ligne par ligne et le stocker dans un tableau.

Solution:

def lire_fichier(fname):
    tab = []
    with open(fname) as f:    
        for line in f:
            tab.append(line)
        print(tab)

lire_fichier('test.txt')
 

Exercice 8:

Écrire un programme python pour trouver les mots les plus longs.

Solution:

def long_word(name):
    with open(name, 'r') as f:
            #diviser le texte en mots	
            words = f.read().split()
    #récupérer la taille maximum
    max_len = len(max(words, key=len))
    #retourner les mots ayant une taille maximum
    return [word for word in words if len(word) == max_len]

print(long_word('test.txt'))
 

Exercice 9:

Écrire un programme Python pour compter le nombre de lignes d’un fichier texte.

Solution:

def file_len(name):
    with open(name) as f:
        for i, l in enumerate(f):
            pass
    return i + 1

print("Nombre de lignes du fichier: ",file_len("test.txt"))
 

Exercice 10:

Écrire un programme Python pour compter le nombre de mots dans un fichier.

Solution:

from collections import Counter

def f_count(name):
    with open(name) as f:
        return Counter(f.read().split())

print("Nombre de mots dans le fichier:",f_count("test.txt"))
 

Éditeur de code Python: Testez votre code en ligne!


 

QCM Python

Une réflexion sur “Exercice Corrigé: Les fichiers en Python – Partie 1

  • janvier 7, 2025 à 8:53 pm
    Permalien

    Bonsoir,
    Je ne suis pas sûre de comprendre les/la différence entre l’exercice 5 et l’exercice 6?
    Exercice 5: Écrire un programme Python pour lire un fichier ligne par ligne et le stocker dans une liste.
    Exercice 6: Écrire un programme Python pour lire un fichier ligne par ligne et le stocker dans une variable.
    Peut-être que je me trompe, mais pour moi une liste est une variable de type liste. Donc dans l’exercice 6 notre variable aura le type liste dès qu’une liste lui sera affectée…

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *