Questão FC331165
No contexto do Python 3.9, analise o trecho a seguir. import json s1 = "{\"nome\": \"Ciro\", \"cep\": \"99999-999\"}" s2 = "[\"um\", \"dois\"]" s3 = "true" s4 = "null" print(json.l
Linguagens de Programação
FGV · 2022
No contexto do Python 3.9, analise o trecho a seguir.
import json
s1 = "{\"nome\": \"Ciro\", \"cep\": \"99999-999\"}"
s2 = "[\"um\", \"dois\"]"
s3 = "true"
s4 = "null"
print(json.loads(s1))
print(json.loads(s2))
print(json.loads(s3))
print(json.loads(s4))
Dado que “\” funciona como escape character, o resultado exibido pela execução desse trecho é:
- {'nome': 'Ciro', 'cep': '99999-999'} ['um', 'dois'] True None
- {'nome': 'Ciro', 'cep': '99999-999'} ('um', 'dois') true Null
- {nome: 'Ciro', cep: '99999-999'} ('um', 'dois') true None
- {nome: 'Ciro', cep: '99999-999'} ['um', 'dois'] True None
- {nome: 'Ciro', cep: '99999-999'} ['um', 'dois'] true Null
Mostrar resposta e comentário
Gabarito
A
Comentário do professor
O código usa json.loads() para transformar cadeias JSON em tipos Python. Esse método faz deserialização: objetos JSON viram dict, arrays viram list, true vira True e null vira None.
As variáveis s1 e s2 são strings Python que contêm JSON. As barras "\" funcionam como escape character para incluir aspas dentro da literal Python, de modo que o JSON interno permanece válido.
Ao chamar json.loads(s1) obtemos um dict {'nome': 'Ciro', 'cep': '99999-999'}. Com json.loads(s2) vem a list ['um', 'dois'].
Para s3 = "true" e s4 = "null", json.loads converte os literais JSON em True e None, respectivamente.
Portanto os prints exibem exatamente:
{'nome': 'Ciro', 'cep': '99999-999'}
['um', 'dois']
True
None.
Conteúdo do catálogo FC Concursos · Atualizado em