DEV Community

Luciano-Rangel-Aguiar
Luciano-Rangel-Aguiar

Posted on

Boas práticas de PEP 8

PEP (Python Enhancement Proposals) 8 é um conjunto de convenções e práticas para a linguagem de código Python, essas práticas tem uso difundido na comunidade Python e facilitam a compreensão e edição do seu código. A PEP 8 foi publicada em 2001 e escrita por Guido Van Rossum, Barry Warsaw e Nick Coghlan, a proposta deste documento foi estabelecer um guia de estilo para a linguagem.

Eu decidi escrever esse artigo com a intenção de consolidar meus conhecimentos sobre o assunto e facilitar a consulta do material, não só para mim, mas também para todos aqueles que estão iniciando o aprendizado da linguagem Python.

Também elaborei os seguintes tópicos com base na aula de PEP8 do curso Programação em Python do básico ao avançado da Geek University. Esses tópicos abordam as principais ideias de boas praticas da PEP 8.

Sintam-se à vontade para utilizar esse material e bons estudos!


1. Nomeando clases, variáveis e funções:

  • Classes:

    • Classes utilizam CamelCase para diferenciar palavras de um nome composto, o que consiste de capitalizar as primeiras letras de cada palavra.

      class Classe: 
          pass 
      
      class ClasseComposta: 
          pass
      
      
  • Funções e variáveis:

    • Para nomear funções ou variáveis, utilize nomes em minúsculo, separando as palavras com underline.

      def soma(): 
          pass 
      
      def soma_dois(): 
          pass 
      
      numero = 4 
      
      numero_impar = 5 
      
      

2. Indentação:

A indentação é utilizada para indicar que um bloco de código se encontra dentro de outro. Em Python, para realizar uma indentação são utilizados 4 espaços ao invés de tab pois a tecla tab pode ser reconfigurada em sistemas diferentes podendo gerar conflito no código, enquanto espaços são padrão em todos os sistemas. Essa pratica no entanto não é universal e caso você decida utilizar o tab é aconselhado não misturar os métodos de indentação. Utilize um ou outro.

if "a" in "banana": 
    print('tem')  

Enter fullscreen mode Exit fullscreen mode

3. Espaçamento entre linhas:

  • Separar funções e definições de classe com duas linhas em branco:

    class Classe1: 
        pass 
    
    class Classe2: 
        pass
    
    
  • Métodos dentro de uma classe devem ser separados com uma única linha em branco:

    def metodo1(): 
        pass 
    
    def metodo2(): 
        pass 
    
    

4. Imports:

  • Imports de pacotes completos devem ser sempre feitos em linhas separadas:

    • Errado:

      import sys, os
      
      
    • Correto:

      immport sys 
      import os 
      
      
  • Imports de partes específicas de um pacote devem ser retirados com um mesmo comando podendo ser dividindo em múltiplas linhas quando forem muitas partes.

    • Poucas partes:

      from Types import StringTypes, ListTypes
      
      
    • Muitas partes:

      from types import ( 
          StringType, 
          ListType, 
          SetType, 
          OutroType 
      )
      
      

5. Espaços em expressões e instruções:

  • Tome cuidado com a utilizacao de espacos excessivos em Python. O PEP 8 defende a utilizcao minima deles nas expressões e instruções:

    • Errado:

      função( algo[ 1 ], { outro: 2 } )
      
      
    • Correto:

      função(algo[1], {outro: 2})
      
      
    • Errado:

      x              = 1 
      y              = 3 
      variavel_longa = 5 
      
      
    • Correto:

      x = 1 
      y = 3 
      variavel_longa = 5 
      
      

6. Finalização de logica:

É muito importante que ao finalizar um bloco de lógica se use um espaçamento de uma linha em branco (tecla enter) para determinar seu enceramento.

Conclusões:

Seguindo esses princípios você pode garantir que seu código Python será legível e organizado não só para você, mas também para todos aqueles que virão a ler e contribuir para seu código, também recomendo que leiam a documentação oficial da PEP 8 para melhor compreensão do assunto.


Teve algum problema? Comente neste artigo!

Se este link foi útil pra você ou você quer apoiar os meus estudos,
deixe seu ❤️

Até a próxima!

Obrigado!

Top comments (0)