Vous pourrez accéder aux éléments du dictionnaire avec des points. Comme ça.
d = edict({'foo':3, 'bar':{'x':1, 'y':2}})
print d.foo
print d.bar.x
#Sortie 3
#Sortie 1
Je l'ai essayé avec windows7 (série python 2.7).
C'est ici. https://github.com/makinacorpus/easydict Jouez avec le lisez-moi ici.
Installation python setup.py install easy_install easyjson Ajoutez-le en attendant.
Erreur lors de la saisie du japonais dans la clé. Erreur même si cité. À un moment donné, cela pourrait être possible ... Le japonais peut être passé à la valeur.
Pourrait être utilisé comme ça ... EasyDict de readme semble être inutile dans ce cas à moins que ce ne soit tout édit.
tester
code
from easydict import EasyDict as edict
from simplejson import loads
#from prettyprint import pp
d = edict({'foo':3, 'bar':{'x':1, 'y':2}})
print d.foo
print d.bar.x
#Sortie 3
#Sortie 1
j = """{
"Buffer": 12,
"name":"Allegra",
"List1": [
{"type" : "point", "coordinates" : [100.1,54.9] },
{"type" : "point", "coordinates" : [109.4,65.1] },
{"type" : "point", "coordinates" : [115.2,80.2] },
{"aaa" : "point", "coordinates" : [150.9,97.8] }
]
}"""
d = edict(loads(j))
print d.Buffer
print d.name
print d.List1[0].coordinates[1]
print d.List1[3].aaa
#pp(d)
#Sortie 12
#Sortie Allegra
#Sortie 54.9
#Point de sortie
b = edict()
b.debug = True
b.foo = 7
b.zzz = u"Gundam"
print b.items()
#production[('debug', True), ('foo', 7), ('log', False), ('zzz', u'\u30ac\u30f3\u30c0\u30e0')]
#Sortie Gundam
class Flower(edict):
power = 1
f = Flower({'height': 12})
print f.power
print f['power']
print f.items()
#Sortie 1
#Sortie 1
#production[('power', 1), ('height', 12)]
Recommended Posts