Tengo un dict como este:
sample = {'ObjectInterpolator': 1629, 'PointInterpolator': 1675, 'RectangleInterpolator': 2042}
No puedo entender cómo volcar el dict a un json
archivo como se muestra a continuación:
{
"name": "interpolator",
"children": [
{"name": "ObjectInterpolator", "size": 1629},
{"name": "PointInterpolator", "size": 1675},
{"name": "RectangleInterpolator", "size": 2042}
]
}
¿Hay una manera pitónica de hacer esto?
Puedes adivinar que quiero generar un d3
mapa de árbol.
python
json
dictionary
holys
fuente
fuente
stdout: json.dump('SomeText', sys.stdout)
OrderedDict
(python> 2.7), no hay garantía de que las claves se ordenen de manera particularCombine la respuesta de @mgilson y @gnibbler, encontré que lo que necesitaba era esto:
De esta manera, obtuve un archivo json con una bonita impresión. Los trucos
print >> f, j
se encuentran desde aquí: http://www.anthonydebarros.com/2012/03/11/generate-json-from-sql-using-python/fuente
print(j, file=f)
en Python 3.6 (en lugar deprint >> f, j
)print(j, file=f)
no funcionó para mí, no necesitaba hacer la parte J también.d = {'a':1, 'b':2} print(d, file=open('sample.json', 'wt'))
trabajó.Por supuesto, es poco probable que el orden se conserve exactamente ... Pero esa es solo la naturaleza de los diccionarios ...
fuente
Esto debería darte un comienzo
fuente
con formato de impresión bonita:
fuente