Dicionários em Python entenda como trabalhar com segurança
- #Python
📎Hora de acessar os dados armazenados no dicionário
🧭 Como acessar valores no dicionário?
Para acessar qualquer valor em um dicionário, utilizamos a referência da chave.
A sintaxe é:
nome_do_dicionario["chave_relativa_ao_valor"]
Vamos relembrar o dicionário que estamos usando:
pessoa = {
"nome": "Fulaninho de Abreu",
"telefone": "XX XXXX-XXXX",
"email":"fulaninho.abreu!gmail.com",
"idade": 21,
"skils": ["python", "html", "css", "javascript", "java"],
"estado_civil":"solteiro",
"situacao_profissional": "estudante"
}
Exemplo de acesso:
nome = pessoa["nome"]
email = pessoa["email"]
print(nome) # Saída: Fulaninho de Abreu
print(email) # Saída: fulaninho.abreu@gmail.com
Essa forma é simples e direta: `dicionario["chave"]`.
⚠️ E se a chave não existir?
Se você tentar acessar uma chave que não existe, o Python lançará um erro do tipo `KeyError`, interrompendo a execução do script.
🛠 Como evitar esse erro?
Use o método `.get()`, que retorna `None` caso a chave não seja encontrada.
celular = pessoa.get('celular')
print(celular) # Saída: None
Você também pode personalizar o valor retornado:
celular = pessoa.get('celular', 'Chave não localizada')
print(celular) # Saída: 'Chave não localizada'
🎯 Excelente para evitar interrupções inesperadas!
---
✍️ Como adicionar uma nova chave?
Existem duas formas:
1. Atribuição direta:
pessoa['celular'] = "XX X XXXX-XXXX"
print(pessoa['celular']) # Saída: XX X XXXX-XXXX
⚠️ Cuidado!
Se a chave já existir, ela será sobrescrita:
pessoa['celular'] = "YY Y YYYY-YYYY"
print(f"Celular de {pessoa["nome"]} - {pessoa['celular']}")
#Saída: Celular de Fulaninho de Abreu - YY Y YYYY-YYYY
✅ Como adicionar somente se a chave não existir?
Use o método `.setdefault()`.
Esse método:
- - Recebe dois argumentos: a chave e um valor padrão;
- - Retorna o valor da chave se ela existir;
- - Caso não exista, cria a chave com o valor padrão e a retorna.
valor = pessoa.setdefault('celular')
print(f"Chave celular encontrada, valor: {valor}")
# Saída: Chave celular encontrada, valor: YY Y YYYY-YYYY
Agora, testando com uma chave ausente:
nnovo_dict = {"nome": "Cicrano de Assis", "idade": 18}
email = novo_dict.setdefault('email')
print(novo_dict)
# Saída: {'nome': 'Cicrano de Assis', 'idade': 18, 'email': None}
Você também pode atribuir um valor padrão diretamente:
outro_dict = {"nome": "Beltrano Buarque", "idade": 19}
email = outro_dict.setdefault('email', 'beltrano.buarque@gmail.com')
print(outro_dict)
# Saída: {'nome': 'Beltrano Buarque', 'idade': 19, 'email': 'beltrano.buarque@gmail.com'}
🧠 Exemplo prático: agrupando nomes pela inicial
Vamos criar um dicionário onde os nomes são agrupados pela primeira letra:
nomes = ['Ádila', 'Adriana', 'Amanda', 'Beatriz', 'Danilo', 'Diego', 'Daniel',
'Kátia', 'Casemiro', 'Claudia', 'Carlos', 'Fernando', 'Francisco']
dict_nomes = {}
for nome in nomes:
inicial = nome[0]
dict_nomes.setdefault(inicial, []).append(nome)
print(dict_nomes)
Resultado:
{
'Á': ['Ádila'],
'A': ['Adriana', 'Amanda'],
'B': ['Beatriz'],
'D': ['Danilo', 'Diego', 'Daniel'],
'K': ['Kátia'],
'C': ['Casemiro', 'Claudia', 'Carlos'],
'F': ['Fernando', 'Francisco']
}
🧠 Quando é bom usar?
💬 Agora é com você!
Consegue entender como o método .setdefault() está sendo usado nesse exemplo?
💡 Comente com seu entendimento!
Vamos trocar ideias! 👨🏽💻👩🏽💻
para mais detalhes acesse a documentação oficial de dicionários em python