Guia Completo de Boas Práticas e Convensões em Python

Quando falamos de sintaxe e convenções de código em PythonO que é Python e por que utilizá-lo?O que é Python e por que utilizá-lo?Aprenda por que Python é a escolha ideal para iniciantes. Descubra sua sintaxe simples, versatilidade e forte comunidade que ajudam no seu desenvolvimento., estamos nos referindo às “regrinhas” e sugestões que ajudam a deixar o código mais limpo, fácil de ler e manter. Você já deve ter se deparado com códigos em outras linguagens que parecem verdadeiras obras de arte abstrata - com espaçamentos confusos, nomes de variáveis pouco intuitivos e diversas outras armadilhas que dificultam o entendimento. Em PythonO que é Python e por que utilizá-lo?O que é Python e por que utilizá-lo?Aprenda por que Python é a escolha ideal para iniciantes. Descubra sua sintaxe simples, versatilidade e forte comunidade que ajudam no seu desenvolvimento., seguir um padrão bem definido não só deixa o código bonito, mas também garante clareza e confiabilidade em seu funcionamento.

Neste artigo, vamos tratar de:

1. Indentação

2. Nomes de variáveis, funções e classes

3. Estilo de escrita📁 Trabalhando com Arquivos: Leia, Escreva e Serialize como um Ninja!📁 Trabalhando com Arquivos: Leia, Escreva e Serialize como um Ninja!Domine as técnicas de manipulação de arquivos em Python. Aprenda a ler, escrever e serializar dados com práticas seguras e eficientes. (PEP 8)

4. Comentários e docstrings

5. Uso de espaços e linhas em branco

Dica: É sempre útil ter uma referência da PEP 8 por perto. Esse guia oficial apresenta as boas práticas e convenções que ajudam a escrever um código Python mais eficaz.

Indentação🔗

Em PythonO que é Python e por que utilizá-lo?O que é Python e por que utilizá-lo?Aprenda por que Python é a escolha ideal para iniciantes. Descubra sua sintaxe simples, versatilidade e forte comunidade que ajudam no seu desenvolvimento., a indentação é obrigatória - ela faz parte da estrutura da linguagem. Diferente de outras linguagens que utilizam chaves ({}) para delimitar blocos de código, em PythonO que é Python e por que utilizá-lo?O que é Python e por que utilizá-lo?Aprenda por que Python é a escolha ideal para iniciantes. Descubra sua sintaxe simples, versatilidade e forte comunidade que ajudam no seu desenvolvimento. a indentação é quem define esse recorte.

if idade >= 18:
    print("Você pode entrar na festa!")  # Bloco indentado
else:
    print("Infelizmente, você não pode entrar...")

Note que, após o if e o else, usamos 4 espaços para iniciar o bloco de código. Embora algumas pessoas optem por utilizar a tecla Tab, a prática recomendada é utilizar quatro espaços. Assim, evitamos incompatibilidades que podem surgir em diferentes editores ou ambientes.

Por que 4 espaços?

Nomes de Variáveis, Funções e Classes🔗

Usar nomes claros e consistentes é fundamental para que, no futuro, você - ou qualquer outra pessoa - consiga entender rapidamente o que cada parte do código faz. Em PythonO que é Python e por que utilizá-lo?O que é Python e por que utilizá-lo?Aprenda por que Python é a escolha ideal para iniciantes. Descubra sua sintaxe simples, versatilidade e forte comunidade que ajudam no seu desenvolvimento., há convenções específicas para isso:

  • Variáveis e funções: utilize o formato “snake_case” (todas as letras minúsculas, separadas por _).

ExemploDicionários: armazenando e acessando dados por chavesDicionários: armazenando e acessando dados por chavesAprenda a usar dicionários em Python para organizar e manipular dados com praticidade. Tutorial completo com exemplos e dicas para otimizar seu código.:

nome_completo = "Maria Silva"
def calcula_media(notas):
    return sum(notas) / len(notas)
  • Classes: utilize o formato “CamelCase” (cada palavra começa com letra maiúscula).

ExemploDicionários: armazenando e acessando dados por chavesDicionários: armazenando e acessando dados por chavesAprenda a usar dicionários em Python para organizar e manipular dados com praticidade. Tutorial completo com exemplos e dicas para otimizar seu código.:

class ContaBancaria:
    def __init__(self, titular, saldo):
        self.titular = titular
        self.saldo = saldo
  • Constantes: utilize letras maiúsculas separadas por _ para manter a uniformidade.

ExemploDicionários: armazenando e acessando dados por chavesDicionários: armazenando e acessando dados por chavesAprenda a usar dicionários em Python para organizar e manipular dados com praticidade. Tutorial completo com exemplos e dicas para otimizar seu código.:

TAXA_CAMBIO_DOLAR = 5.13

Por que escolher nomes descritivos?

Imagine abrir um código repleto de variáveis chamadas apenas de x1, var2 ou a_b_c, sem nenhuma indicação do que elas representam. Fica complicado entender o que está acontecendo, não é? Nomes bem definidos refletem a intenção e ajudam a identificar rapidamente a função de cada elemento no código.

Estilo de Escrita (PEP 8)🔗

A PEP 8 pode ser vista como um “manual de etiqueta” para a linguagem PythonO que é Python e por que utilizá-lo?O que é Python e por que utilizá-lo?Aprenda por que Python é a escolha ideal para iniciantes. Descubra sua sintaxe simples, versatilidade e forte comunidade que ajudam no seu desenvolvimento., orientando as pessoas sobre como escrever código da melhor forma possível. Alguns pontos essenciais são:

Boa PráticaExemplo
Linhas com até 79 caracteresFacilita a leitura em telas menores.
Uso de espaços ao redor de operadoresresultado = 3 + 2 5
Separação de módulos e classes com duas linhas em brancoAjuda a visualizar melhor as definições.
Separação de métodos dentro de classes com uma linha em brancoContribui para a organização interna da classe.
Importante: Mesmo que o padrão “80 colunas” possa parecer ultrapassado para alguns, essa recomendação continua sendo seguida por muitos desenvolvedores. Ela é especialmente útil quando se trabalha com múltiplas janelas de código simultaneamente ou em práticas de pareamento de programação.

Comentários e Docstrings🔗

Nunca subestime a importância dos comentários. Eles são como pequenas notas que ajudam a explicar a intenção de blocos de código, facilitando a compreensão🌀 Comprehensions: Sintaxe Concisa para Código Poderoso🌀 Comprehensions: Sintaxe Concisa para Código PoderosoTransforme seu código com comprehensions em Python para listas, dicionários e conjuntos. Aprimore legibilidade e otimize a performance! para você e para outros desenvolvedores.

Comentários de Linha

Para explicações rápidas:

# Verifica se o usuário é maior de idade
if idade >= 18:
    print("Maior de idade")

Docstrings (Strings de Documentação)

As docstrings são usadas para detalhar a funcionalidade de funções, classes e métodosDicionários: armazenando e acessando dados por chavesDicionários: armazenando e acessando dados por chavesAprenda a usar dicionários em Python para organizar e manipular dados com praticidade. Tutorial completo com exemplos e dicas para otimizar seu código.. Geralmente, elas ficam logo abaixo da definição do objeto, envoltas por aspas triplas:

def calcula_preco_final(preco_bruto, desconto):
    """
    Calcula o preço final de um produto.
    :param preco_bruto: valor original do produto
    :param desconto: valor em porcentagem a ser aplicado
    :return: preço final após desconto
    """
    return preco_bruto * (1 - desconto / 100)

Com as docstrings, diversas ferramentas de documentação podem extrair essas informações automaticamente e gerar relatórios úteis, algo especialmente valioso em projetos maiores.

Uso de Espaços e Linhas em Branco🔗

A forma como organizamos o código também afeta muito sua legibilidade. Veja alguns exemplos:

  • Espaços ao redor de operadores:
# Exemplo Ruim:
soma=10+5
# Exemplo Bom:
soma = 10 + 5
  • Linhas em branco para separar blocos de código:
# Costuma-se usar 2 linhas em branco entre funções:
def soma(a, b):
    return a + b
def subtrai(a, b):
    return a - b
  • Imports no início do arquivo:
import math
import sys
# Código que segue a partir daqui

Reunir todos os imports em um único bloco ajuda a identificar rapidamente as dependências utilizadas no projeto.

Exemplo Prático🔗

Imagine que você precisa criar um pequeno programa para gerenciar o estoque de uma lojinha de bairro. O código poderia ser algo assim:

ITEMS_POR_CAIXA = 12  # Constante que define quantos itens cabem em cada caixa
def calcular_caixas_necessarias(quantidade_itens):
    """
    Calcula quantas caixas são necessárias para guardar os itens.
    :param quantidade_itens: número total de itens a serem armazenados
    :return: número de caixas necessárias
    """
    # Divide a quantidade de itens pela capacidade de cada caixa
    caixas = quantidade_itens // ITEMS_POR_CAIXA
    # Se houver itens restantes, será necessário mais uma caixa
    if quantidade_itens % ITEMS_POR_CAIXA != 0:
        caixas += 1
    return caixas
def exibir_relatorio_caixas(quantidade_itens):
    """
    Exibe na tela quantas caixas serão utilizadas e se há sobrando itens.
    """
    caixas_necessarias = calcular_caixas_necessarias(quantidade_itens)
    print(f"Total de itens: {quantidade_itens}")
    print(f"Caixas necessárias: {caixas_necessarias}")
# Exemplo hipotético de uso
exibir_relatorio_caixas(37)

Nesse exemploDicionários: armazenando e acessando dados por chavesDicionários: armazenando e acessando dados por chavesAprenda a usar dicionários em Python para organizar e manipular dados com praticidade. Tutorial completo com exemplos e dicas para otimizar seu código., podemos notar:

  • O uso de snake_case para funções, como calcular_caixas_necessarias.
  • Comentários que ajudam a entender o propósito de trechos específicos.
  • Docstrings que detalham a funcionalidade de cada função.
  • Indentação e espaçamentos que mantêm o código visualmente agradável e organizado.

Conclusão🔗

Seguir as boas práticas📁 Trabalhando com Arquivos: Leia, Escreva e Serialize como um Ninja!📁 Trabalhando com Arquivos: Leia, Escreva e Serialize como um Ninja!Domine as técnicas de manipulação de arquivos em Python. Aprenda a ler, escrever e serializar dados com práticas seguras e eficientes. de sintaxe básica e as convenções de código em PythonO que é Python e por que utilizá-lo?O que é Python e por que utilizá-lo?Aprenda por que Python é a escolha ideal para iniciantes. Descubra sua sintaxe simples, versatilidade e forte comunidade que ajudam no seu desenvolvimento. é um passo importante para desenvolver projetos de sucesso. Embora pareça que há muitas regras, com o tempo essas práticas vão se tornando naturais e ajudam a melhorar significativamente a legibilidade e manutenção do seu código.

Lembre-se:

Você não precisa decorar todos os detalhes de uma vez. Com a prática, consultar a PEP 8 se torna um hábito que contribuirá para que escrever código bem estruturado se torne algo natural. Boas práticas📁 Trabalhando com Arquivos: Leia, Escreva e Serialize como um Ninja!📁 Trabalhando com Arquivos: Leia, Escreva e Serialize como um Ninja!Domine as técnicas de manipulação de arquivos em Python. Aprenda a ler, escrever e serializar dados com práticas seguras e eficientes. e até a próxima!

Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.

Referências🔗

Compartilhar artigo