Pour écrire une liste de valeurs dans un fichier, on combine open en mode 'w' et une boucle for.
Rappel des modes
'w' → écrase le fichier (ou le crée s'il n'existe pas)
'a' → ajoute à la suite (sans écraser)noms = ['Alice', 'Bob', 'Charlie']with open('/tmp/noms.txt', 'w') as f:
for nom in noms:
f.write(nom + '\n') # ⚠ \n indispensable pour passer à la lignef.write() prend uniquement une chaîne de caractères. Pour des nombres :
f.write(str(42) + '\n')
f.writelines(liste_de_strs)writelines n'ajoute pas de \n entre les éléments. Si tu veux des sauts de ligne, ajoute-les toi-même.
lignes = [n + '\n' for n in noms]
with open('/tmp/noms.txt', 'w') as f:
f.writelines(lignes)Équivalent plus court avec join :
with open('/tmp/noms.txt', 'w') as f:
f.write('\n'.join(noms)) # pas de \n finalwith open('/tmp/log.txt', 'a') as f:
f.write('Nouvelle ligne\n')Utile pour un fichier de log : chaque exécution ajoute, n'efface pas l'historique.
Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →