Encontrar a Profundidade de um JSON

Um objeto JSON é um formato de dados popular com diversos usos no armazenamento e comunicação de dados. É simples e fácil de ler, e pode ser analisado e gerado por uma ampla variedade de linguagens. O formato é essencialmente uma coleção não ordenada de pares key:value (como um dicionário). Os pares key:value têm a forma:
"key": value
Em que tanto "key" como value são qualquer tipo de dado válido em JSON. Estes pares são separados por vírgulas e envolvidos por chavetas { } para formar um objeto. Os valores podem ser outro objeto JSON, aumentando a profundidade do objeto JSON.
A sua tarefa é criar uma função Python calculate_depth que recebe um objeto JSON como argumento e retorna a profundidade máxima do objeto.
O objeto JSON será apresentado como uma string. Para simplificar, pode assumir que o objeto JSON estará bem formatado e que todas as chaves serão strings. No entanto, os valores podem ser strings, números, booleanos, null ou outros objetos JSON (representados como dicionários aninhados).
Como converter uma string JSON para um dicionário em Python?
Você pode usar o módulo json em Python para converter uma representação em string de um objeto JSON em um dicionário Python:
import json

json_string = '{"name": "John", "age": 30, "city": "New York"}'

# Use json.loads() para converter a string em um dicionário
dict_obj = json.loads(json_string)

print(dict_obj)
# Output: {'name': 'John', 'age': 30, 'city': 'New York'}
Neste exemplo, json.loads(json_string) é usado para converter a json_string em um dicionário Python. A função loads é abreviação de "load string". Você pode então usar este dicionário no seu programa Python como qualquer outro dicionário.
A sua função deve retornar um único inteiro — a profundidade máxima do objeto JSON de entrada. A profundidade é definida como o nível máximo de objetos JSON aninhados. O objeto JSON de nível superior tem profundidade 1, um objeto JSON dentro de outro objeto JSON tem profundidade 2, e assim por diante.
Entrada
Saída
{ "name":"John", "age":30, "city":"New York"}
1
{ "name":"John", "age":30, "city": { "name": "New York", "population": 8000000 }}
2
{ "name":"John", "details": { "age":30, "city": { "name": "New York", "population": { "year2023": 8000000, "year2022": 7900000 }}}}
4
Nota: A profundidade não é definida pelo número de pares key:value, mas pelo nível máximo de objetos JSON aninhados.
 

Constraints

Time limit: 1 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue