Eu tenho um ditado como este:
sample = {'ObjectInterpolator': 1629, 'PointInterpolator': 1675, 'RectangleInterpolator': 2042}
Não consigo descobrir como despejar o dict em um json
arquivo, como mostrado abaixo:
{
"name": "interpolator",
"children": [
{"name": "ObjectInterpolator", "size": 1629},
{"name": "PointInterpolator", "size": 1675},
{"name": "RectangleInterpolator", "size": 2042}
]
}
Existe uma maneira pitônica de fazer isso?
Você pode adivinhar que eu quero gerar um d3
mapa de árvore.
python
json
dictionary
holys
fonte
fonte
stdout: json.dump('SomeText', sys.stdout)
OrderedDict
(python> 2.7), não há garantia de que as chaves sejam ordenadas de uma maneira específicaCombine a resposta de @mgilson e @gnibbler, encontrei o que preciso era o seguinte:
Dessa forma, recebi um arquivo json de impressão bonita. Os truques
print >> f, j
ser encontrados aqui: http://www.anthonydebarros.com/2012/03/11/generate-json-from-sql-using-python/fonte
print(j, file=f)
em Python 3.6 (em vez deprint >> f, j
)print(j, file=f)
não funcionou para mim, eu não precisava fazer a parte J também.d = {'a':1, 'b':2} print(d, file=open('sample.json', 'wt'))
trabalhou.Claro, é improvável que a ordem seja exatamente preservada ... Mas essa é apenas a natureza dos dicionários ...
fonte
Isso deve lhe dar um começo
fonte
com formato de impressão bonita:
fonte