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 :

Problème fichier.readline() renvoie une chaine VIDE [Python 3.X]


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2017
    Messages : 93
    Par défaut Problème fichier.readline() renvoie une chaine VIDE
    Bonjour,

    J'ai un problème avec la fonction readline() qui renvoie une chaine de caractère vide. Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    fichier_stats=open('STATS.txt','r')
    nb_lignes=0
    text=""
    for line in fichier_stats :
           nb_lignes+=1
     
    for k in range(nb_lignes):
           text = text + fichier_stats.readline()
    Je veux obtenir une chaine de caractère (text) avec toutes les lignes de mon fichier. Ne connaissant pas à l'avance le nombre de lignes de mon fichier (nb_lignes), j'utilise la boucle for line in... pour l'obtenir.
    J'utilise ensuite la fonction readline() pour l'ajouter dans ma variable text mais elle renvoie une chaine vide.

    Merci de m'aider.

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Salut,

    Après ta première boucle le fichier a été entièrement parcouru et ta deuxième boucle n'a plus rien à lire.

    Tu n'as aucun besoin de connaître le nombre de lignes à l'avance, ce que tu veux faire se résume simplement à ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    with open('STATS.txt', 'r') as inf:
        text = "".join(inf.readlines())

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 738
    Par défaut
    Salut,

    ou encore a ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    with open('STATS.txt', 'r') as inf:
        text = inf.read()
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2017
    Messages : 93
    Par défaut
    Merci beaucoup pour votre réponse rapide

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 01/09/2014, 16h12
  2. problème d'accent dans une chaine
    Par dom_dev dans le forum Langage
    Réponses: 4
    Dernier message: 23/06/2006, 10h33
  3. Tester une chaine vide !!! :s
    Par hysteresis dans le forum ASP
    Réponses: 3
    Dernier message: 05/11/2005, 22h25
  4. copie de string donne une chaine vide
    Par zmatz dans le forum SL & STL
    Réponses: 5
    Dernier message: 15/10/2005, 15h31
  5. [BDD] renvoyer une chaine vide au lieu de null
    Par cmoulin dans le forum JDBC
    Réponses: 6
    Dernier message: 06/05/2004, 11h38

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