Vamos cobrir as regras mais importantes e frequentemente usadas da PEP 8:

  1. Indentação:

    # Correto
    def minha_funcao():
        print("Hello")
        if True:
            print("World")
    
    # Incorreto
    def minha_funcao():
      print("Hello") # Apenas 2 espaços
    def minha_funcao():
    	print("Hello") # Usando tab
    
    
  2. Linhas em Branco:

    class MinhaClasse:
        def __init__(self):
            pass# Uma linha em branco antes do próximo método
    
        def meu_metodo(self):
            pass 
    
    def minha_outra_funcao(): # Duas linhas em branco antes de uma nova função
        pass
    
    
  3. Tamanho Máximo da Linha:

    # Correto (quebra de linha implícita dentro de parênteses)
    minha_variavel_longa = (primeiro_item + segundo_item +
                            terceiro_item + quarto_item)
    
    # Incorreto (linha muito longa)
    #minha_variavel_longa = primeiro_item + segundo_item + terceiro_item + quarto_item + quinto_item
    
    
  4. Nomenclatura:

  5. Espaços em Branco:

    # Correto
    a = 1 + 2
    lista = [1, 2, 3]
    dicionario = {'chave': 'valor'}
    funcao(arg1, arg2)
    
    # Incorreto
    a=1+2
    lista = [ 1, 2, 3 ]
    dicionario = { 'chave':'valor' }
    funcao( arg1,arg2 )
    
    
  6. Importações:

    import os
    import sys
    
    import requests
    from django.conf import settings
    
    from meu_app.models import Usuario
    from .utils import helper_function
    
    
  7. Comentários:

    def calcular_area_quadrado(lado):
        """
        Calcula a área de um quadrado.
    
        Args:
            lado (float): O comprimento do lado do quadrado.
    
        Returns:
            float: A área calculada.
        """
        # Garante que o lado seja positivo antes do cálculo
        if lado <= 0:
            raise ValueError("O lado deve ser um valor positivo.")
        return lado * lado