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 :

Lire une ligne et colonne fichier texte


Sujet :

Python

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2004
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 36
    Points : 26
    Points
    26
    Par défaut Lire une ligne et colonne fichier texte
    Bonjour à tous

    Je dispose d'un fichier texte contenant des valeurs en lignes et en colonnes (les colonnes sont séparées par des TAB), exactement comme un fichier Excel ou Calc classique.

    Je souhaite parcourir une plage de "cellules" pour en trouver la valeur maximum.

    Dois-je convertir le fichier texte en un .ods ou .csv par exemple ?
    Puis comment faire pour demander de lire telle ou telle cellule ?

    Merci pour votre aide

  2. #2
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    un exemple d'utilisation de fichier csv dans la
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2004
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 36
    Points : 26
    Points
    26
    Par défaut
    Merci pour ta réponse.

    En effet j'ai lu cette page, mais je ne vois pas comment spécifier une plage de cellule à lire grâce à ça...

  4. #4
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    effectivement, pas possible d'indexer avec le module csv

    Si ton fichier n'est pas trop gros, tu peux le charger entierement en memoire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    # creation d'un fichier de test
    f = open('monfichier.txt' ,'w')
    for i in range(200):
        for j in range(200):
            f.write("\tligne %i colonne%i" % (i,j))
        f.write('\n')
    f.close()
     
    #creation de la liste
    tb = []
    for ligne in open('monfichier.txt'):
        tb.append(ligne.split('\t'))
     
    print tb[4][5]
    print max(tb[10])
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2004
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 36
    Points : 26
    Points
    26
    Par défaut
    Ok, c'est ce que je voulais éviter vu la taille de mes fichiers, mais tant pis.

    En tout cas, merci bcp pour ton aide

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/08/2011, 17h46
  2. [WD14] Lire une ligne d'un fichier texte
    Par DanielB dans le forum WinDev
    Réponses: 6
    Dernier message: 23/03/2011, 12h22
  3. Lire une ligne dans un fichier texte
    Par stpaul04 dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 28/07/2009, 14h06
  4. Réponses: 3
    Dernier message: 13/11/2007, 15h45
  5. Réponses: 2
    Dernier message: 08/11/2007, 15h33

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