diff --git a/src/cours/CIEL1/01-bases-python/cours/python-bases-5-fichiers.md b/src/cours/CIEL1/01-bases-python/cours/python-bases-5-fichiers.md index 89608b6..c7b8926 100644 --- a/src/cours/CIEL1/01-bases-python/cours/python-bases-5-fichiers.md +++ b/src/cours/CIEL1/01-bases-python/cours/python-bases-5-fichiers.md @@ -19,11 +19,10 @@ fichier = open('nom_du_fichier.txt', 'mode', encoding='utf-8') Le mode d'ouverture permet de savoir quelles actions vous souhaitez (et pourrez) faire avec votre fichier. -- `'r'` : lecture seule (**r**ead only) : on démarre au début du fichier, erreur si le fichier n'existe pas -- `'w'` : écriture (**w**rite) : on démarre au début du fichier, écrase le contenu, crée le fichier au besoin -- `'a'` : ajout (**a**ppend) : on démarre à la fin du fichier, crée le fichier si besoin -- `'x'` : création uniquement (e**x**clusive) : échoue si le fichier existe déjà -- les versions `+` (ex.: `'r+'`, `'w+'`, `'a+'`, `'x+'`) ajoutent la possibilité de lire et écrire simultanément dans le fichier. +- `'r'` : lecture (read) +- `'w'` : écriture (write) - écrase le contenu existant +- `'a'` : ajout (append) - ajoute à la fin du fichier +- `'x'` : création uniquement (erreur si le fichier existe) ```admonish example title="Exemple" ~~~python @@ -31,19 +30,6 @@ fichier = open('exemple.txt', 'r', encoding='utf-8') ~~~ ``` -#### Mode binaire - -Les modes listés au dessus ouvrent les fichiers par défaut en **mode texte**. Dans ce cas, Python interprète les données comme des chaînes de caractères (`str`) et gère la conversion d'encodage (par exemple, `utf-8`). - -Pour manipuler des **données brutes** (images, fichiers audio, etc.), il faut utiliser le **mode binaire** en ajoutant le caractère `'b'` : - -- `'rb'` : lecture binaire -- `'wb'` : écriture binaire -- `'ab'` : ajout binaire -- combiné avec `+` pour lecture/écriture binaire, comme `'rb+'`, `'wb+'`, `'ab+'` - -En mode binaire, Python lit et écrit des objets de type `bytes` et ne fait aucune conversion d’encodage ni adaptation de fin de ligne : les octets lus et écrits sont strictement identiques à ceux stockés sur le disque. - ## Fermer un fichier diff --git a/src/cours/CIEL1/01-bases-python/tp/TP_MDP04_fichiers.md b/src/cours/CIEL1/01-bases-python/tp/TP_MDP04_fichiers.md index 916a1b3..9db0194 100644 --- a/src/cours/CIEL1/01-bases-python/tp/TP_MDP04_fichiers.md +++ b/src/cours/CIEL1/01-bases-python/tp/TP_MDP04_fichiers.md @@ -26,10 +26,6 @@ Le tout dans un répertoire avec le nom suivant `YYYY-MM-DD_TPX_NOM1_Prenom1_NOM ### Résultats attendus - [ ] Le programme se lance sans erreur. -- [ ] La fonction `get_word_list_from_file` retourne une liste de mots tirée du fichier `wordlist_fr.txt` -- [ ] La fonction `write_password_in_file` écrit le mot de passe généré à la fin d'un fichier sans écraser son contenu précédent -- [ ] La fonction `tirer_les_des` tire cinq valeurs aléatoires entre 1 et 6 et les concatène dans une chaîne de caractères qu'elle retourne -- [ ] La fonction `generer_dice_passphrase` génère une passphrase aléatoire à l'aide d'un tirage de dés et la retourne - [ ] Chaque fonction contient une docstring minimale expliquant sa fonctionnalité. Bonus : Doctsrings complètes au format Numpy. - [ ] Le code est propre, correctement formaté, les variables, fonctions et paramètres sont bien nommés, les conventions sont respectées. diff --git a/src/cours/SUMMARY.md b/src/cours/SUMMARY.md index 5d6abfc..88b718f 100644 --- a/src/cours/SUMMARY.md +++ b/src/cours/SUMMARY.md @@ -35,7 +35,6 @@ - [TP1 - Bases de Python](./CIEL2/01-revisions-python/tp/tp1_bases.md) - [TP1b - Mise en pratique](./CIEL2/01-revisions-python/tp/tp1bis_mise_en_pratique.md) - [TP2 - Fonctions](./CIEL2/01-revisions-python/tp/tp2-fonctions.md) - - [TP3 - Fichiers et structures de données](./CIEL2/01-revisions-python/tp/tp3-fichiers-structures-de-données.md) - [TP Git](./CIEL2/04-git/tp.md) - [Python objet](./CIEL2/02-python-objet/python-objet.md) - [Bases de données](./CIEL2/03-base-de-donnees/bases-de-donnees.md)