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 simple de fichiers formatés


Sujet :

Python

  1. #1
    Membre actif
    Inscrit en
    Novembre 2003
    Messages
    543
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 543
    Points : 239
    Points
    239
    Par défaut Lecture simple de fichiers formatés
    Je cherche à utiliser un langage de script en remplacement de AWK pour lire des fichiers textes.

    Dans ce langage, $0 est la ligne lue, $1 $2 ... sont les différents champs en fonction du séparateur défini dans la variable FS.
    Il suffit d'écrire { print $3} pour afficher le troisième champ d'un fichier.

    Est-il possible de faire cela aussi simplement en python. Comment définir le séparateur, comment accéder aux différents champs ?
    Merci d'avance

  2. #2
    Membre du Club Avatar de Mr Hyde
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 80
    Points : 62
    Points
    62
    Par défaut
    Je ne comprend pas tres bien ta question...peut tu m'expliquer ce que tu appelle un champ dans un fichier? (dans une BDD, je comprend, mais dans un fichier...je vois pas)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 376
    Points : 402
    Points
    402
    Par défaut
    En python, tu récupères ta String, tu la split (il y a plusieurs fonction split), puis tu accède à celle qui t'interresse.
    Regarde ici : http://www.python.org/doc/2.4.1/lib/string-methods.html#string-methods
    "There are two major products that come out of Berkeley: LSD and UNIX.
    We don't believe this to be a coincidence."
    - Jeremy S. Anderson

    La FAQ Python
    Les cours et tutoriels pour apprendre Python
    Le Forum Python

  4. #4
    Membre actif
    Inscrit en
    Novembre 2003
    Messages
    543
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 543
    Points : 239
    Points
    239
    Par défaut
    J'ai utilisé split pour faire le code suivant dans une boucle while

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
       Ligne=Fichier.readline()
       if Ligne =='':
          break
       Ligne=Ligne[:-1]                  #pour supprimer le caractère de fin de ligne 
       ListeChamps=Ligne.split(';')  #découpe la ligne en fonction du séparateur
       Annee=Champs[0]               #on récupère les champs
       Reg=Champs[1]
    Ca marche, j'aurais du meiux lire la doc.
    Merci de votre aide

    ps. je crois qu'on peut mettre "résolu"

    Balises [Code] rajoutées par Guigui_
    Le bouton [Resolu] est juste en bas à gauche

  5. #5
    Membre averti

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 379
    Points : 376
    Points
    376
    Par défaut
    juste un "plus" à titre d'info, il existe une classe csv qui fonctionne super bien

    un rapide exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #!/usr/bin/python
    # -*- coding: iso-8859-1 -*-
     
    import  csv
     
     
    Reader = csv.reader( open( 'LeFichier', 'r' ), delimiter = ';')
    for Row in Reader:
      print Row

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

Discussions similaires

  1. Lecture d'un fichier formaté
    Par Theri dans le forum Débuter
    Réponses: 3
    Dernier message: 13/01/2010, 11h28
  2. lecture fichier formaté
    Par [Hugo] dans le forum Langage
    Réponses: 4
    Dernier message: 26/07/2007, 07h37
  3. Lecture simple de fichier XML en C/C++
    Par bigbear dans le forum MFC
    Réponses: 3
    Dernier message: 26/06/2006, 14h56
  4. Ifstream > Lecture d'un fichier > Format
    Par Zenol dans le forum SL & STL
    Réponses: 15
    Dernier message: 19/12/2005, 11h04
  5. lecture simple de fichiers formatés
    Par enicnath dans le forum Langage
    Réponses: 7
    Dernier message: 06/10/2005, 18h06

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