IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Lecture des fichiers [FAQ]


Sujet :

Python

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 69
    Par défaut Lecture des fichiers
    Bonjour,

    quelquen pourait me dire s'il vous plais comment récuperer les données à partir d'un fichier et ligne par ligne.
    je n'ai trouvé que le méthode "read()"
    et je veux quelque chose comme readline() par exemple.
    car je veux faire un code comme ceci par exemple:
    f=open("path")
    while (f.readline()):
    faire....fait
    mais le problème c'est que j'arrive pas à récupérer le contenu de mon fichier ligne par ligne.

    Merci d'avance pour toute aide.

  2. #2
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    Vite fait,


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    f = open('nomdufichier','r')
    for ligne in f.readlines():
        fait-ce-que-tu-veux-avec-la-ligne
    f.close()
    3 points
    • dans la fonction open(), ne pas oublier le 'r' pour read (lire) ou 'w' pour write (ecrire) ou 'a' pour append (ajouter)
    • ensuite tu as le choix entre read() = lire tout d'un seul coup, read(n) = lire n caracteres, readline() = lire 1 ligne, readline(n) = lire n lignes, et readlines = lis toutes les lignes (et les mets dans une liste)
    • close() pour fermer ton fichier lorsque tu n'en as plus besoin. Ca evite des soucis parfois et pis c'est plus propre


    Voila en esperant que ca t'aide

    PS: La prochaine fois fais quand meme une recherche sur le forum ou dans la FAQ. Je suis sur que la reponse si trouvais deja...

  3. #3
    Membre émérite

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Par défaut
    Petits compléments : d'une part, si open n'a pas d'autre argument que le nom du fichier, il l'ouvre en lecture; d'autre part, readlines() c'est bien, mais quand le fichier est gros, le charger entièrement en mémoire c'est pas forcément ce qu'il y a de mieux.
    De plus, il y a une méthode très pratique en python pour lire un fichier ligne par ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    f = open('nomdufichier','r')
    for ligne in f:
        #...
    f.close()
    P.S.: Ce n'est pas dans la FAQ, mais ça devrait y être, en effet.

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 69
    Par défaut
    Bonjour,

    Merci beaucoup pour la réponse, c'est exactement ce que je cherche
    Oui c'est vrai j'aurai du chercher dans la faq du developper avant de postuler Merci aussi pour le conseil

    Cordialement.

  5. #5
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    Merci Oiffrig, je ne connaissais pas cette astuce. J'ai bien fait de trainer mes guêtres par ici aujourd'hui

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 114
    Par défaut
    Bonjour

    J'ai aussi cette manière à proposer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    import fileinput
     
    for line in fileinput.input("sample.txt"):
        pass
    De mémoire : pas très rapide, mais très simple.

  7. #7
    Membre émérite

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Par défaut
    Plus très utile, maintenant qu'on peut itérer directement sur l'objet renvoyé par open. Ce module sert surtout quand il faut lire plusieurs fichiers à la suite.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Windows]lecture des fichier lnk (raccourcis)
    Par Tiaps dans le forum API standards et tierces
    Réponses: 10
    Dernier message: 21/10/2009, 19h27
  2. [POI] Problème de lecture des fichiers Word
    Par Dari dans le forum Documents
    Réponses: 9
    Dernier message: 05/07/2007, 14h08
  3. Lecture des Fichier.MOD
    Par faressam dans le forum Vidéo
    Réponses: 3
    Dernier message: 03/04/2007, 15h50
  4. Lecture des fichiers INI
    Par jamfr73 dans le forum Linux
    Réponses: 2
    Dernier message: 13/04/2006, 01h03
  5. Lecture des fichiers INDEX.DAT ?
    Par rpoulin dans le forum Langage
    Réponses: 4
    Dernier message: 02/11/2005, 07h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo