1
resposta

[Projeto] Tratamento de exceção ao acessar dicionário

dicionario = {'Isabella' : 21, 'Matheus' : [27,30,12], 'Ana':[30,30,40]}

nome = input('Digite o nome desejado: ')
nome = nome.capitalize()

try:
    print(dicionario[nome])
except KeyError:
    resposta = input('O usuário informado não existe. Deseja inclui-lo na plataforma? ')
    if resposta.upper() == 'SIM' or resposta.upper() == 'S':
        idade = int(input('Digite a idade do usuário: '))
        dicionario[nome] = idade
        print(f'{nome} com a idade de {dicionario[nome]} anos foi incluído.')
    else:
        print('Programa encerrado.')
else:
    print('O usuário informado está atualmente cadastrado na plataforma.')

1 resposta

Olá, Isabella! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o KeyError para validar chaves em dicionários com Python, utilizou muito bem o input() para interação com o usuário e ainda compreendeu a importância da condição lógica para incluir novos elementos dinamicamente no dicionário.

Uma dica interessante para o futuro é aplicar o método get() para simplificar a busca em dicionários e evitar erros. Assim:

dicionario = {'Isabella': 21, 'Matheus': [27,30,12], 'Ana':[30,30,40]}

nome = input('Digite o nome desejado: ').capitalize()
idade = dicionario.get(nome)

if idade is None:
    print('Nome não encontrado.')
else:
    print(f'{nome} está cadastrado com o valor: {idade}')

Isso faz a consulta de forma mais direta e segura.

Conteúdos relacionados

Alguns materiais podem estar em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!