"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como os dicionários Python mantêm seu código limpo e seco

Como os dicionários Python mantêm seu código limpo e seco

Publicado em 2024-11-06
Navegar:984

How Python Dictionaries Keep Your Code Clean and DRY

Dicionário Python e o princípio DRY: um guia rápido para iniciantes

Ei! ? Se você está mergulhando na programação Python, provavelmente já se deparou com dicionários e talvez se perguntou: “O que exatamente é um dicionário em Python e como ele pode me ajudar a codificar de maneira mais inteligente?” Não se preocupe, vamos dividir isso de uma forma super simples.

O que é um dicionário em Python?

Imagine que você tem uma lista de itens, e cada item tem um rótulo exclusivo anexado a ele, como “nome: John” ou “idade: 25”. Um dicionário em Python funciona exatamente assim! É uma coleção de pares de valores-chave, onde cada chave é única e aponta para um valor específico. Pense nele como um mini banco de dados para armazenar informações de forma organizada e organizada.

É como um verdadeiro dicionário onde você procura uma palavra (a chave) e obtém seu significado (o valor). Legal, certo? ?

Como fazer um dicionário em Python?

Criar um dicionário é tão fácil quanto uma torta. Você apenas usa chaves {} e separa cada par de valores-chave com dois pontos :.

Veja como você pode fazer um dicionário simples:

# Creating a dictionary to store student information
student_info = {
    'name': 'John Doe',
    'age': 21,
    'major': 'Computer Science'
}

# Printing out the dictionary
print(student_info)

Este dicionário armazena o nome, a idade e o curso do aluno. Observe como as chaves como ‘nome’ e ‘idade’ estão entre aspas? Isso porque as chaves podem ser strings, números ou até tuplas! Os valores podem ser qualquer coisa, strings, listas, outros dicionários, o que você quiser.

Como os dicionários nos ajudam a evitar repetições (princípio DRY)

Agora, é aqui que fica interessante. Você deve ter ouvido falar do princípio DRY, que significa Don’t Repeat Yourself. É uma regra que incentiva você a evitar redundância em seu código. Como os dicionários podem ajudar nisso? Vamos dar uma olhada.

Antes de usar um dicionário (código de repetição)

Imagine que você deseja armazenar informações sobre os alunos em variáveis ​​separadas. Pode ser algo assim:

student1_name = 'Alice'
student1_age = 20
student1_major = 'Mathematics'

student2_name = 'Bob'
student2_age = 22
student2_major = 'Physics'

Não apenas temos nomes de variáveis ​​​​repetitivos, mas se quisermos imprimi-los ou atualizá-los, teremos que nos repetir continuamente. É aqui que os dicionários podem salvar o dia! ?

Exemplo 1: Depois de usar um dicionário (versão DRY)

Com os dicionários, podemos armazenar todas essas informações de uma forma mais limpa:

# Using dictionaries to store student data
students = {
    'student1': {'name': 'Alice', 'age': 20, 'major': 'Mathematics'},
    'student2': {'name': 'Bob', 'age': 22, 'major': 'Physics'}
}

print(students['student1']['name'])  # Output: Alice
print(students['student2']['age'])   # Output: 22

Agora, você não precisa criar variáveis ​​separadas para o nome, idade e especialização de cada aluno. Você pode acessar ou atualizar as informações de uma forma muito mais simples. Além disso, torna seu código mais limpo e fácil de gerenciar.

Exemplo 2: Evitando repetição com dicionários

Digamos que você queira criar um sistema de notas simples com base nas notas dos alunos. Sem dicionários, você pode acabar escrevendo o seguinte:

# Without dictionary (repeating code)
alice_score = 90
bob_score = 75
charlie_score = 85

if alice_score >= 85:
    print("Alice gets an A")
if bob_score >= 85:
    print("Bob gets an A")
if charlie_score >= 85:
    print("Charlie gets an A")

Aqui, estamos repetindo as instruções if e codificando o nome e a pontuação de cada aluno, o que viola o princípio DRY.

Em vez disso, com um dicionário, você pode evitar repetições como esta:

# Using a dictionary (DRY principle)
student_scores = {'Alice': 90, 'Bob': 75, 'Charlie': 85}

for student, score in student_scores.items():
    if score >= 85:
        print(f"{student} gets an A")

Agora você tem um código mais limpo, mais curto e de fácil manutenção! Você escreve a instrução if apenas uma vez e ela funciona para todos os alunos do seu dicionário. ?

Métodos úteis de dicionário

Os dicionários vêm com vários métodos integrados que facilitam o trabalho com eles. Vamos conferir alguns deles:

  1. .get(): Ajuda a evitar erros se a chave não existir.
   print(student_info.get('address', 'Address not available'))  
   # Output: Address not available
  1. .keys() e .values(): Obtenha todas as chaves ou valores no dicionário.
   print(student_info.keys())  # Output: dict_keys(['name', 'age', 'major'])
   print(student_info.values())  # Output: dict_values(['John Doe', 21, 'Computer Science'])
  1. .items(): Obtenha chaves e valores como pares.
   for key, value in student_info.items():
       print(f'{key}: {value}')
   # Output: 
   # name: John Doe
   # age: 21
   # major: Computer Science
  1. .update(): Atualize um dicionário com outro dicionário ou pares de valores-chave.
   student_info.update({'grade': 'A'})
   print(student_info)  
   # Output: {'name': 'John Doe', 'age': 21, 'major': 'Computer Science', 'grade': 'A'}
  1. .setdefault(): Adiciona uma chave com um valor padrão se a chave não existir.
   student_info.setdefault('graduation_year', 2024)
   print(student_info)  
   # Output: {'name': 'John Doe', 'age': 21, 'major': 'Computer Science', 'grade': 'A', 'graduation_year': 2024}

Concluindo

Dicionários são superpoderosos e podem realmente ajudar você a seguir o princípio DRY em seu código. Ao usar dicionários, você evita se repetir, mantém seu código organizado e facilita a leitura e a manutenção.

Então, da próxima vez que você criar um monte de variáveis ​​semelhantes, considere usar um dicionário. Isso economizará muito tempo e esforço, e seu futuro eu agradecerá! ?

Boa codificação! ?

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/aashwinkumar/how-python-dictionaries-keep-your-code-clean-and-dry-3067?1 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3