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 :

[Débutant] Lecture json erreur : encoding='utf-8-sig' [Python 3.X]


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de lucienkany
    Profil pro
    Développeur
    Inscrit en
    Janvier 2004
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Janvier 2004
    Messages : 257
    Par défaut [Débutant] Lecture json erreur : encoding='utf-8-sig'
    Bonjour,

    J'essaie d'ouvrir un fichier json comme ci-dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    fg.add_child(folium.GeoJson(data=open('world.json', 'r', encoding='utf-8-sig').read(),
    style_function=lambda x : {'fillColor':'green' if x['properties']['POP2005']< 50000000
    else 'orange' if 50000000<=x['properties']['POP2005']<100000000 else 'red'}))
    A l'exécution de mon fichier .py j'obtiens une erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TypeError: 'encoding' is an invalid keyword argument for this function
    Lorsque je supprime A l’exécution, les données du fichier "word.json" son "lues" et affichées dans le terminal.

    J'ai cherché sur le forum et le net mais les solutions proposées ne fonctionnent pas.

    D'avance merci pour votre aide.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    795
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 795
    Par défaut
    Bonjour

    Es tu sur de la version python qui est utilisé ?
    en effet, en version 2, open n'avait pas de paramètre encoding

  3. #3
    Membre éclairé Avatar de lucienkany
    Profil pro
    Développeur
    Inscrit en
    Janvier 2004
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Janvier 2004
    Messages : 257
    Par défaut
    Bonjour DonKnacki,

    Merci pour ta réponse.

    J'ai une situation bizarre!

    J'ai installé python 3 et maintenant je vois que j'ai 2. Je me demande si c'est pas au fil des mises à jour de "atom" qui m'a ramené à 2. Est-ce possible?

    Maintenant je vais essayer de réinstaller la version 3.

    Je reviens dès que ça fonctionne.

  4. #4
    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,

    En admettant qu'une appli t'aie réinstallé Python2 discrètement, ce n'est certainement pas en supprimant la version 3.

    C'est la façon dont tu lances ton programme qui fait que Python2 soit utilisé.

  5. #5
    Membre éclairé Avatar de lucienkany
    Profil pro
    Développeur
    Inscrit en
    Janvier 2004
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Janvier 2004
    Messages : 257
    Par défaut
    Merci VinsS.

    En effet, dans ATOM, PlatformIO fonctionne uniquement avec python 2.
    J'ai réinstallé pyhon 3 (supprimer et réinstaller: une galère) et PlatformIO réclame python 2, je n'ose pas cliquer pour installer.

    C'est la façon dont tu lances ton programme qui fait que Python2 soit utilisé.
    Comment faire ?

    D'avance merci.

  6. #6
    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
    Je ne sais pas ce qu'est PlatformIO, alors ...

    Pour lancer une appli Python, tu as le choix:

    Ouvrir un terminal et lancer python app.py pour utiliser Python2 ou python3 app.py pour la version 3. (Sous Archlinux c'est le contraire)

    Ou indiquer python ou python3 dans le shebang, et rendre le fichier exécutable.

    Sous Windows, tu as encore la possibilité du fichier .bat, un fichier texte qui contient la commande que tu aurais entrée dans un terminal.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/02/2014, 08h17
  2. Réponses: 3
    Dernier message: 02/09/2008, 08h36
  3. instruction pour xml Encoder utf-8
    Par totoche dans le forum ASP
    Réponses: 7
    Dernier message: 14/02/2007, 11h03
  4. [1.1] Supprimer xml vers=1.0 encod=utf-8
    Par Nip dans le forum ASP.NET
    Réponses: 9
    Dernier message: 24/11/2005, 16h09
  5. [Débutant] Lecture xml SAX
    Par Ekros dans le forum APIs
    Réponses: 6
    Dernier message: 21/06/2004, 15h14

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