2016-06-29 11 views
0

ich json Bibliothek verwenden möchten, und führen Sie den CodeJson.load(), Json.loads() funktioniert nicht in Python 2.7

import json 

data = ''' { 
    "name" : "Chuck", 
    "phone": { 
    "type" : "intl", 
    "number" : "+1 734 355 4544" 
    } 
    "email" :{ 
    "hide" : "yes" 
    } 
} ''' 

info = json.load(data) 
print 'Name : ', info["name"] 
print 'Hide:' , info["email"]["hide"] 

Es wird die Fehler „Rückladungen zeigt (fp.read(), Attribute: 'str' Objekt hat kein Attribut 'lesen' " Jede Lösung für sie Edited Version

+0

Sie verwenden die falsche Funktion. 'json.load (fp)' ist für einen Dateistream. Sie sollten 'json.loads (s)' für eine Zeichenfolge verwenden. – Nayuki

+0

Sie benötigen auch ein Komma, das die beiden Diktate voneinander trennt. –

Antwort

9

Sie haben Ihr Programm json.py benannt, die in Konflikt? mit dem eingebauten Modul json.

Benennen Sie Ihr Programm in my_program.py um und löschen Sie json.py und json.pyc aus Ihrem Verzeichnis.

+0

Es funktionierte, aber ein Jiffy-Problem ist, dass es den Fehler beim Importieren der JSON "ImportError: kann Name JSON nicht importieren" – Ali

+0

Ich weiß nicht, warum das passiert. –

+0

@Ali Blick auf den Kommentar von Nayuki. Auch Ihre JSON-Zeichenfolge (Daten) ist nicht gültig JSON. – gipsy

Verwandte Themen