Exercice Corrigé: Les fichiers en Python – Partie 2

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 obtenir la taille d’un fichier simple en octets.

Solution:

def file_size(name):
    import os
    info = os.stat(name)
    return info.st_size

print("Taille du fichier en octets est: ",file_size("test.txt"))
 

Exercice 2:

Écrire un programme Python pour écrire une liste dans un fichier.

Solution:

liste = ['A', 'B', 'C', 'D', 'E', 'F']
with open('test.txt', "w") as f:
    for c in liste:
        f.write("%s\n" % c)

content = open('test.txt')
print(content.read())
 

Exercice 3:

Écrire un programme Python pour copier le contenu d’un fichier dans un autre fichier.

Solution:

from shutil import copyfile

copyfile('source.txt', 'destination.txt')
 

Exercice 4:

Écrire un programme Python pour combiner chaque ligne du premier fichier avec la ligne correspondante dans le deuxième fichier.

Solution:

with open('file1.txt') as f1, open('file2.txt') as f2:
    for line1, line2 in zip(f1, f2):
        # line1 du fichier1.txt, line2 du fichier2.txt
        print(line1+line2)
 

Exercice 5:

Écrire un programme Python pour lire une ligne au hasard dans un fichier.

Solution:

import random

def rand_line(name):
    #diviser les lignes
    lines = open(name).read().splitlines()
    #choisir une ligne aléatoirement
    return random.choice(lines)

print(rand_line('file.txt'))
 

Exercice 6:

Écrire un programme Python pour déterminer si un fichier est fermé ou non.

Solution:

f = open('test.txt','r')
print(f.closed)
f.close()
print(f.closed)
 

Exercice 7:

Ecrivez un programme Python qui prend un fichier texte en entrée et renvoie le nombre de mots d’un fichier texte donné.
Note: Certains mots peuvent être séparés par une virgule sans espace.

Solution:

def count_words(name):
   with open(name) as f:
       data = f.read()
       data.replace(",", " ")
       return len(data.split(" "))

print(count_words("test.txt"))
 

Exercice 8:

Écrire un programme Python pour extraire des caractères de divers fichiers texte et les placer dans une liste.

Solution:

import glob

char_liste = []
files_list = glob.glob("*.txt")
for i in files_list:
	with open(i, "r") as f:
		char_liste.append(f.read())

print(char_liste)
 

Exercice 9:

Écrire un programme Python pour supprimer les caractères de retour à la ligne ‘\n’ d’un fichier.

Solution:

def remove_n(name):
    data = open(name).readlines()
    return [s.rstrip('\n') for s in data]

print(remove_n("test.txt"))
 

Exercice 10:

Écrivez un programme Python pour générer 26 fichiers texte nommés A.txt, B.txt, et ainsi de suite jusqu’à Z.txt.

Solution:

import string, os

#vérifier si le répertoir doc existe sinon creez-le
if not os.path.exists("doc"):
   os.makedirs("doc")
for l in string.ascii_uppercase:
   with open(l + ".txt", "w") as f:
       f.writelines(l)
 

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


 

QCM Python

Laisser un commentaire

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