Skip to content

Instantly share code, notes, and snippets.

@davidalves1
Last active May 26, 2017 01:45
Show Gist options
  • Save davidalves1/348ab1664e27ac3dc7ebaaecc3a4a3f0 to your computer and use it in GitHub Desktop.
Save davidalves1/348ab1664e27ac3dc7ebaaecc3a4a3f0 to your computer and use it in GitHub Desktop.
# -*- coding: utf-8 -*-
import json
res = '{"nome": "Vívian Beça Magalhães", "endereco": "Rua Límpido Córrego n988"}'
obj = json.loads(res)
data = json.dumps(obj)
print(data)
# {"endereco": "Rua L\u00edmpido C\u00f3rrego n988", "name": "V\u00edvian Be\u00e7a Magalh\u00e3es"}
@fabiothz
Copy link

Se a sua preocupação é com saídas como estas: L\u00edmpido, não se preocupe, ao gerar um arquivo JSON em unicode, os caracteres especiais são convertidos, mas se você fazer um load deste arquivo novamente verá que ele irá carregar o texto normalmente... Veja:

import json
res = '{"nome": "Vívian Beça Magalhães", "endereco": "Rua Límpido Córrego n988"}'
obj = json.loads(res)
print(obj)
{'endereco': 'Rua Límpido Córrego n988', 'nome': 'Vívian Beça Magalhães'}

data = json.dumps(obj)
print(data)
'{"endereco": "Rua L\\u00edmpido C\\u00f3rrego n988", "nome": "V\\u00edvian Be\\u00e7a Magalh\\u00e3es"}'

obj2 = json.loads(data)
print(obj2)
{'endereco': 'Rua Límpido Córrego n988', 'nome': 'Vívian Beça Magalhães'}

O que o json.dumps() faz é preparar os dados do json em um formato válido para ser salvo em disco. Se você ainda está tendo problemas com a recuperação de um arquivo destes salvos, mante exatamente o texto que está te trazendo problema que fica mais fácil de ajudar.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment