Académique Documents
Professionnel Documents
Culture Documents
L3 BI-EBUS
Haïfa Nakouri
hayfa.nakouri@esen.tn
ESEN Manouba
2021/2022
Objectifs du chapitre
file2.seek(0)
print (file2.read(10))
Hello Guys
ObjetFichier.readline(n)
(file2.readline())
How are you ?
(file2.seek(0))
(file2.readline(5))
Hello
(file2.seek(0))
(file2.readline(20))
Hello Guys
(file2.seek(0))
(file2.readline(15))
Hello Guys
Une autre façon de travailler avec les lignes d’un fichier consiste à lire
chaque ligne (chaîne) dans une liste
La méthode readlines() est utilisée pour lire toutes les lignes d’un fichier
texte et les stocker dans une liste de lignes (chaînes). Example :
uneListe = f2.readlines()
print (f2.readlines())
['Hello Guys \n', 'How are you? \n']
Les programmes Python peuvent également lire et traiter des lignes à partir
de fichiers texte à l’aide d’une instruction itérative. Exemple :
fichier :
myFile = open("GuestList.txt","w")
myFile.write("Hi there!")
myFile.write("How are you?")
myFile.close()
myFile = open("GuestList.txt","w")
myFile.write("Hi there!\n")
myFile.write("How are you?")
myFile.close()
Exemple
L = [‘hello guys\n’,‘how are you?’]
ObjetFichier.writelines(L)
print("Ouvrir le fichier")
target = open("C:/Users/User1/Desktop/filename.txt", 'w')
print("Saisir des lignes : ")
line1 = ‘good morning’
line2 = ‘how are you?’
print("Ecriture des lignes dans le fichier")
target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.writelines([line1,line2])
print("Fermer le fichier.")
target.close()
Exemple:
print("Closed?",file.closed)
En Python, le mot clé with est utilisé quand on travaille avec des
sources ingérables (comme les fichiers stream).
def main():
f=open("C:/Users/acer/PycharmProjects/TestFile.txt","r+")
d={}
for line in f:
for letter in line.lower():
if letter in d:
d[letter]+=1
else:
d[letter]=1
f.close
print(d)
main()
Le fichier CSV est ouvert avec la fonction open() intégrée, qui renvoie
un objet fichier
import csv
with open(‘people.csv', 'r') as file:
my_reader = csv.reader(file)
for row in my_reader:
print(row) ['Name', 'Age', 'Profession']
file.close() ['Jack', '23', 'Doctor']
['Miller', '22', 'Engineer']
Chaque ligne renvoyée par le lecteur est une liste d’éléments String
contenant les données trouvées en supprimant le délimiteur
{'Name': 'Jack', ' Age': ' 23', ' Profession': ' Doctor'} {'Name': 'Miller', ' Age': ' 22', ' Profession': ' Engineer'}
Note: À partir de Python 3.8, csv. DictReader() renvoie un dictionnaire pour chaque
ligne, et nous n’avons pas besoin d’utiliser dict() explicitement
Haïfa Nakouri LPE-BI ESEN 2021/2022 26
Ecrire dans un fichier CSV
Tout d’abord, nous importons le module csv et nous ouvrons notre fichier
csv en mode écriture.
La fonction csv.writer() permet de créer un objet adapté à l’écriture : un
objet writer.
La fonction writerow() est utilisée pour écrire une seule ligne dans le fichier
CSV.
Pour itérer les données sur les lignes, nous devrons utiliser la fonction
writerows().
import csv
myData=[[‘first_name’,’second_name’, ‘Grade’],[‘Med’,’Ali’,’A’],[‘Ahmed’, ‘Anas’,’B’]]
With open('example1.csv', 'w‘, newline=‘’) as myFile:
#create the writer object containing csv module and the writer function
writer = csv.writer(myFile)
#writerows can get a list and the items in the list will be converted to columns in
csv file
writer.writerows(myData)
myFile.close()
print("Writing complete")
Objets de csv. La classe DictWriter() peut être utilisée pour écrire dans un
fichier CSV à partir d’un dictionnaire Python.
Syntaxe de la classe csv.DictWriter() : csv.DictWriter(Fichier, NomsChamps).
Fichier : le fichier CSV dans lequel on souhaite écrire
NomsChamps : une liste contenant les en-têtes des colonnes en
spécifiant l’ordre dans lequel les données devraient être écrites dans le
fichier csv
import csv
with open('example3.csv', 'w‘, newline=‘’) as myFile:
fieldnames=[‘first_name’,’second_name’,’grade’]
writer = csv.DictWriter(myFile,fieldnames=fieldnames)
writer.writeheader()
writer.writerow({‘first_name’:’Med’,’seconf_name’:’Ali’,’grade’:’A’})
myFile.close()
print("Writing complete")
import csv
with open('players.csv', 'w', newline='') as myFile:
fieldnames=['player_name','fide_rating']
writer = csv.DictWriter(myFile,fieldnames=fieldnames)
writer.writeheader()
writer.writerow({'player_name': 'Magnus Carlsen', 'fide_rating': 2870})
writer.writerow({'player_name': 'Fabiano Caruana', 'fide_rating': 2822})
writer.writerow({'player_name': 'Ding Liren', 'fide_rating': 2801})
myFile.close()