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 :

[Python 3.3.2] module csv


Sujet :

Python

  1. #1
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2012
    Messages
    321
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2012
    Messages : 321
    Par défaut [Python 3.3.2] module csv
    Bien le bonjour à tous.

    J'ai une petite question qui me turlupine.
    Je rencontre quelques soucis avec le module csv.

    Dans le shell python, le code suivant fonctionne tout ce qu'il y a de plus normalement, la lecture de mon fichier csv se fait parfaitement.

    >>> import csv
    >>> file=open('/home/Dev/Python/import.csv')
    >>> reader=csv.reader(file,delimiter=';',quotechar="'")
    >>> for row in reader:
    print (row)


    ['3080216033617', '9,49']
    ['3080216033297', '4,44']
    ['3080216036182', '7,82']
    ['3080216037875', '4,86']
    ['3080216018904', '13,15']
    ['3080216017754', '4,59']
    ['3080216003306', '5,20']
    ['3080216029535', '8,80']
    ['3080216033747', '6,55']
    ['3080216021164', '5,32']
    ['3080216037707', '4,75']
    ['3080216020440', '8,35']
    ['3080216020327', '10,75']
    ['3173600001122', '8,12']


    Par contre, le même code, sous forme de script dans un fichier importcsv.py

    import csv
    file=open('/home/Dev/Python/import.csv')
    reader=csv.reader(file,delimiter=';',quotechar="'")
    for row in reader:
    print (row)

    me renvoie le message d'erreur suivant dans le shell

    Traceback (most recent call last):
    File "/home/laurentcachia/Documents/Dev/Python/csv.py", line 1, in <module>
    import csv
    File "/home/laurentcachia/Documents/Dev/Python/csv.py", line 3, in <module>
    reader=csv.reader(file,delimiter=';',quotechar="'")
    AttributeError: 'module' object has no attribute 'reader'

    Y a t il quelque chose qui m'échappe ?

    Si vous avez des idées sur le sujet, je suis preneur.

    Merci d'avance pour vos conseils éclairés

  2. #2
    Membre Expert
    Avatar de e-ric
    Homme Profil pro
    Apprenti chat, bienfaiteur de tritons et autres bestioles
    Inscrit en
    Mars 2002
    Messages
    1 568
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Apprenti chat, bienfaiteur de tritons et autres bestioles

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 568
    Par défaut
    C'est quoi le fichier "/home/laurentcachia/Documents/Dev/Python/csv.py" ? le source de ton script ? cela ne serait pas un conflit de noms de modules ?

    M E N S . A G I T A T . M O L E M
    Debian 64bit, Lazarus + FPC -> n'oubliez pas de consulter les FAQ Delphi et Pascal ainsi que les cours et tutoriels Delphi et Pascal

    "La théorie, c'est quand on sait tout, mais que rien ne marche. La pratique, c'est quand tout marche, mais qu'on ne sait pas pourquoi. En informatique, la théorie et la pratique sont réunies: rien ne marche et on ne sait pas pourquoi!".
    Mais Emmanuel Kant disait aussi : "La théorie sans la pratique est inutile, la pratique sans la théorie est aveugle."

  3. #3
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2012
    Messages
    321
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2012
    Messages : 321
    Par défaut
    En effet, l'information initiale est peu claire.

    Le fichier csv.py est simplement le script python.

    Le fichier à lire est le fichier import.csv

    Hum remarque tout à fait pertinente sur le nom... Je vais changer cela.... merci pour la piste en tout cas

    Edit :

    Rhaaaa, donc oui, je suis une buse. En nommant le script de la même facon que le module, l'interpreteur tentait en priorité d'importer mon script et non pas le module.

    D'où l'erreur puisque mon script ne contenait en effet pas d'objet reader....

    Un petit changement de nom et voilou.

    Merci tout plein pour l'indice, j'avais de la peau de saucisse sur les yeux pour ne pas l'avoir vu.

    Tout fonctionne normalement maintenant.

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

Discussions similaires

  1. Manipulation du module csv
    Par ugrumov_zita dans le forum Général Python
    Réponses: 0
    Dernier message: 08/11/2013, 09h28
  2. module csv : empiler données
    Par tbar403 dans le forum Général Python
    Réponses: 5
    Dernier message: 09/10/2009, 10h42
  3. Module csv : comment enregistrer les données lues ?
    Par yoshik dans le forum Général Python
    Réponses: 5
    Dernier message: 06/07/2009, 11h20
  4. Questions sur le module CSV
    Par Bogey Jammer dans le forum Général Python
    Réponses: 1
    Dernier message: 03/09/2007, 11h57

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