2
respostas

[Dúvida] Print apresentando erro

como este comando pode dar erro Ex.: Comando:for bbb in relac.values(): print(relac[bbb])

Resultado: KeyError Traceback (most recent call last) in <cell line: 1>() 1 for bbb in relac.values(): ----> 2 print(relac[bbb])

2 respostas

E aí, Ednilson!

Esse erro KeyError geralmente acontece quando você tá tentando acessar uma chave em um dicionário que não existe.

No teu caso, o for bbb in relac.values(): tá percorrendo os valores do teu dicionário relac, mas na hora do print(relac[bbb]), pode ser que algum valor de bbb não seja uma chave válida em relac.

Dá uma olhada nos valores de bbb enquanto o loop tá rodando. Pode ser que tenha algum valor ali que não tá presente como chave em relac.

Uma dica: Se tu quiser só imprimir os valores do dicionário, sem se preocupar com as chaves, pode simplificar assim:

for valor in relac.values():
    print(valor)

Isso evita o KeyError porque tá acessando diretamente os valores, sem precisar da chave.

Espero que isso ajude a resolver!

Resolvido. Muito Obrigado!