{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Les fichiers\n", "- Il est recommandé d'utiliser les fichiers avec l'instruction **with** pour éviter les problèmes de fermetures.\n", "- On obtient un itérateur ne servant donc qu'une fois.\n", "- L'itérateur renvoie des lignes. Elles se terminent par \"\\n\".\n", "- \"ligne.strip()\" permet d'enlever les \"\\n\".\n", "- Il y a plusieurs modes d'accès :\n", " * \"r\" : lecture\n", " * \"w\" : écriture\n", " * \"a\" : ajout\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## I) Lecture dans un fichier" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "'Louis Pasteur, né à Dole (Jura) le 27 décembre 1822 et mort à Marnes-la-Coquette (Hauts-de-Seine, à cette époque en Seine-et-Oise) le 28 septembre 1895, est un scientifique français, chimiste et physicien de formation. \\n'\n", "'\\n'\n", "'Pionnier de la microbiologie, il connut, de son vivant même, une grande notoriété pour avoir mis au point un vaccin contre la rage.\\n'\n", "-----------------------------\n", "Louis Pasteur, né à Dole (Jura) le 27 décembre 1822 et mort à Marnes-la-Coquette (Hauts-de-Seine, à cette époque en Seine-et-Oise) le 28 septembre 1895, est un scientifique français, chimiste et physicien de formation. \n", "\n", "\n", "\n", "Pionnier de la microbiologie, il connut, de son vivant même, une grande notoriété pour avoir mis au point un vaccin contre la rage.\n", "\n" ] } ], "source": [ "# pasteur étant un itérateur, il ne fonctionne qu'une seule fois\n", "with open(\"Fichiers/pasteur.txt\",\"r\",encoding=\"utf-8\") as pasteur :\n", " for ligne in pasteur :\n", " print(repr(ligne)) #pour mieux comprendre le code\n", " print(\"-----------------------------\")\n", "with open(\"Fichiers/pasteur.txt\",\"r\",encoding=\"utf-8\") as pasteur : # il faut remettre cette ligne !! \n", " for ligne in pasteur :\n", " print(ligne)\n", " " ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "nom : LE FUR\n", "\n", "prenom : Denis\n", "\n", "email : dlefur@gmail.com\n", "\n", "ville : São Paulo\n", "\n", "pays : Brésil\n", "\n", "---------------------------\n", "\n", "{'nom': 'LE FUR', 'prenom': 'Denis', 'email': 'dlefur@gmail.com', 'ville': 'São Paulo', 'pays': 'Brésil'}\n" ] } ], "source": [ "# création d'un dictionnaire à partir d'un fichier\n", "with open(\"Fichiers/contact.csv\",\"r\",encoding=\"utf-8\") as contact :\n", " for ligne in contact :\n", " print(ligne)\n", "print(\"---------------------------\\n\")\n", "with open(\"Fichiers/contact.csv\",\"r\",encoding=\"utf-8\") as contact :\n", " dico=dict()\n", " for ligne in contact :\n", " ligne=ligne.strip() # on enlève les fin de ligne \"\\n\"\n", " L=ligne.split(\" : \")\n", " (c,v)=tuple(L)\n", " dico[c]=v\n", " print(dico)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## II) Écriture dans un fichier" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "with open(\"Fichiers/carres.txt\",\"w\",encoding=\"utf-8\") as carres :\n", " for k in range(100) :\n", " carres.write(f\"x = {k:2d} ---> x^2 = {k**2:4d}\\n\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.7" } }, "nbformat": 4, "nbformat_minor": 2 }