Gabarito disponível
Julgue os próximos itens, a respeito de Python.
Considere o código a seguir, desenvolvido em Python.
prisao = {
"p1": {"inquerito": "INQ123",
"anos_prisao": 5},
"p2": {"inquerito": "INQ567",
"anos_prisao": 3},
"p3": {"inquerito": "INQ789",
"anos_prisao": 6}
}
del prisao["p1"]
for pessoa, dados in prisao.items():
dados["anos_prisao"] += 2
resultado = sum(dados["anos_prisao"] for
dados in prisao.values())
print(f"O Resultado é: {resultado}")
Ao ser executado, esse código apresentará o seguinte resultado.
O Resultado é: 13
Considere o código a seguir, desenvolvido em Python.
prisao = {
"p1": {"inquerito": "INQ123",
"anos_prisao": 5},
"p2": {"inquerito": "INQ567",
"anos_prisao": 3},
"p3": {"inquerito": "INQ789",
"anos_prisao": 6}
}
del prisao["p1"]
for pessoa, dados in prisao.items():
dados["anos_prisao"] += 2
resultado = sum(dados["anos_prisao"] for
dados in prisao.values())
print(f"O Resultado é: {resultado}")
Ao ser executado, esse código apresentará o seguinte resultado.
O Resultado é: 13
Resolução comentada
Remove p1, soma 2 aos anos de p2 e p3 e totaliza 13.
Após o del restam p2 (3 anos) e p3 (6 anos). O laço soma 2 a cada um, resultando em 5 e 8. A soma é 13.
Análise das alternativas
Certo: o resultado é 13. Errado: estaria incorreta, pois o valor impresso é 13.
Referência: Python: dicionários aninhados, del, items(), values() e sum().
Resolução comentada do VaiConcursos.