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 :

modifier affichage date après conversion csv en json


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Responsable des études
    Inscrit en
    Septembre 2016
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable des études

    Informations forums :
    Inscription : Septembre 2016
    Messages : 23
    Points : 16
    Points
    16
    Par défaut modifier affichage date après conversion csv en json
    Bonjour à tous,

    Je dispose d'un fichier csv que j'ai converti en json. Mais les dates apparaissent au format "%y%m%d" ce qui me donne cela:
    datetime.datetime(2015, 4, 25, 0, 0) : '12.5', datetime.datetime(2015, 5, 31, 0, 0): '9.5', datetime.datetime(2015, 9, 6, 0, 0): '11.0', datetime.datetime(2015, 1, 14, 0, 0): '8.30'...
    Je dois faire apparaître les données comme cela: 25/04/2015 : 12.5. Comment faire? J'ai essayé avec JSONencoder
    avec MyObj(object)?
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    import csv
    import json
    from datetime import datetime
    from json import dumps
     
    def mesdonnees(row ):  #fonction qui crée mes dictionnaires et récupère les infos
    def json_serial(obj):
        """JSON serializer for objects not serializable by default json code"""
     
        if isinstance(obj, datetime):
            serial = obj.isoformat()
            return serial
        raise TypeError ("Type not serializable")
     
    # lire le fichier csv
     
    with open('fichiernouvellesdonnees2014.json', 'w') as jsonfile:
        #je manipule mon fichier
        with open('fichiernouvellesdonnees2014I.csv','r') as csvfile:
            reader = csv.DictReader(csvfile,delimiter=';')#Lire une ligne de tableau = un dictionnaire.
     
            for row in reader:
                listedesdonnees2014=mesdonnees(row)
     
     
        print dumps(listedesdonnees2014, default=json_serial)
     
        jsonfile.write('\n')
        jsonfile.close()

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    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 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Citation Envoyé par GUL75 Voir le message
    Je dois faire apparaître les données comme cela: 25/04/2015 : 12.5. Comment faire?
    Si vous utilisez un module comme datetime, la première chose à faire est de lire la documentation et d'essayer de comprendre les exemples qui y sont données. Vous y trouverez strftime et des exemples comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> from datetime import datetime
    >>> dt = datetime(2015, 4, 25, 0, 0)
    >>> format(dt, "%d/%m/%Y")
    '25/04/2015'
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre à l'essai
    Homme Profil pro
    Responsable des études
    Inscrit en
    Septembre 2016
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable des études

    Informations forums :
    Inscription : Septembre 2016
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Bonjour

    Merci. J'avais regardé datetime mais je n'arrivais pas à écrire correctement mes arguments.

Discussions similaires

  1. [XL-2010] Problème date après conversion csv
    Par Tiviia dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 23/08/2013, 15h11
  2. [XL-2003] Convertir une colonne en date apres import CSV
    Par imaril dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 04/02/2010, 15h48
  3. Réponses: 1
    Dernier message: 04/09/2009, 20h12
  4. modifier affichage date en sql
    Par bobosh dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 03/09/2008, 16h23
  5. [MySQL] affichage après conversion htmlentities
    Par mims1664 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/03/2007, 13h22

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