JSON do Python

JSON é uma sintaxe usada para armazenar e trocar dados.

JSON é um texto escrito na notação de objeto JavaScript (JavaScript object notation).

JSON no Python

Python tem um módulo chamado json do pacote interno, pode ser usado para manipular dados JSON.

Exemplo

Importar json Módulo:

import json

Analisar JSON - transformar JSON em Python

Se houver uma string JSON, pode-se usar json.loads() Method to parse it.

The result will be a Python dictionary.

Exemplo

Convert JSON to Python:

import json
# Some JSON:
x = '{ "name":"Bill", "age":63, "city":"Seatle"}'
# Parse x:
y = json.loads(x)
# Result is a Python dictionary:
print(y["age"])

Executar Exemplo

Convert Python to JSON

If there is a Python object, you can use json.dumps() Method to convert it to a JSON string.

Exemplo

Convert Python to JSON:

import json
# Python object (dictionary):
x = {
  "name": "Bill",
  "age": 63,
  "city": "Seatle"
}
# Convert to JSON:
y = json.dumps(x)
# Result is a JSON string:
print(y)

Executar Exemplo

You can convert the following types of Python objects to JSON strings:

  • dict
  • list
  • tuple
  • string
  • int
  • float
  • True
  • False
  • None

Exemplo

Convert Python objects to JSON strings and print the values:

import json
print(json.dumps({"name": "Bill", "age": 63}))
print(json.dumps(["apple", "bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))

Executar Exemplo

When Python is converted to JSON, Python objects are converted to JSON (JavaScript) equivalents:

Python JSON
dict Object
list Array
tuple Array
str String
int Number
float Number
True true
False false
None null

Exemplo

Converter objects containing all valid data types: Python

import json
x = {
  "name": "Bill",
  "age": 63,
  "married": True,
  "divorced": False,
  "children": ("Jennifer","Rory","Phoebe"),
  "pets": None,
  "cars": [
    {"model": "Porsche", "mpg": 38.2},
    {"model": "BMW M5", "mpg": 26.9}
  }
}
print(json.dumps(x))

Executar Exemplo

Formatar resultados

O exemplo acima imprime uma string JSON, mas não é fácil de ler, sem recuos e quebras de linha.

json.dumps() O método oferece parâmetros para tornar os resultados mais legíveis:

Exemplo

Uso indent Parâmetro define o número de recuos:

json.dumps(x, indent=4)

Executar Exemplo

Você também pode definir delimitadores, o valor padrão é (", ", ": "), o que significa usar vírgula e espaço para separar cada objeto, usar dois pontos e espaço para separar chave e valor:

Exemplo

Uso separators Parâmetros para alterar os separadores padrão:

json.dumps(x, indent=4, separators=(". ", " = "))

Executar Exemplo

Ordenar resultados

json.dumps() O método oferece parâmetros para ordenar as chaves dos resultados:

Exemplo

Uso sort_keys Parâmetros para especificar se os resultados devem ser ordenados:

json.dumps(x, indent=4, sort_keys=True)

Executar Exemplo