Sabendo que é possível utilizar JSON em programas desenvolvidos em Python, assinale a opção que apresenta o código correto para que, ao final, o script tenha como resultado a impressão do valor do processo, ou seja, 1234, a partir do JSON fornecido.
- A)import json x = '{ "MP":"AP", "Processo":1234, "Cidade":"Macapa"}'y = json.loads(x)print(y["Processo"])
Correta: usa json.loads() para converter a string JSON em dicionário e depois acessa a chave "Processo".
- B)import jsonx = '{ "MP":"AP", "Processo":1234, "Cidade":"Macapa"}'y = json.dump(x)print(y[1])
Errada: json.dump() é usado para escrever JSON em arquivo, não para carregar uma string, e y[1] não acessa a chave correta.
- C)import jsonx = '{ "MP":"AP", "Processo":1234, "Cidade":"Macapa"}'y = json.index(x)print(y(Processo))
Errada: json.index() não é função do módulo json e print(y(Processo)) tem sintaxe inválida para acessar chave.
- D)import json x = '{ "MP":"AP", "Processo":1234, "Cidade":"Macapa"}' y = json.split(x)print(y[1])
Errada: json.split() não existe no módulo json, e dividir string não extrai o valor de um campo JSON.
- E)import json x = '{ "MP":"AP", "Processo":1234, "Cidade":"Macapa"}'y = json.lambda(x)print(y[2])
Errada: json.lambda() não existe em Python, e y[2] também não corresponde à leitura da chave "Processo".
Gabarito: A
Em Python, o módulo json serve para converter texto JSON em estruturas da linguagem e vice-versa. Quando você recebe um JSON como string, o caminho certo para ler seus dados é usar json.loads(), que transforma esse texto em um dicionário Python. Depois disso, você acessa a chave desejada normalmente, como y["Processo"]. No enunciado, o valor "Processo" está dentro do JSON com o número 1234. Então a lógica é: carregar o JSON com loads e, em seguida, buscar a chave "Processo". Como dicionário em Python usa acesso por chave, o print mostra exatamente 1234. A alternativa A faz isso direitinho: importa json, carrega a string com json.loads(x) e imprime y["Processo"]. As demais misturam funções que não servem para ler JSON, ou usam nomes que nem existem no módulo. Em concursos, a banca costuma cobrar essa diferença básica: loads para string JSON, load para arquivo, dumps para transformar objeto em string e dump para escrever em arquivo. Se você guardar essa dupla loads/load e dumps/dump, já evita metade das armadilhas.