PEP 8 - Guia de estilo para código Python

Este artigo é uma tradução/adaptação da PEP 8 - Style Guide for Python Code, de Guido van Rossum e Barry Warsaw, que mostra as convenções para escrever código Python.

[ Hits: 63.223 ]

Por: Artur Gaspar em 20/04/2010


Codificação e importações



Codificação

Código do Python deve sempre utilizar codificação ASCII ou Latin-1 (ISO-8859-1). Para Python 3.0 e mais novos, UTF-8 é preferível ao Latin-1, consulte a PEP 3120.

Arquivos usando ASCII (ou UTF-8, para Python 3) não devem ter um encoding cookie. Latin-1 (ou UTF-8) deve ser utilizado apenas quando um comentário ou docstring precisa mencionar um nome de autor que requer Latin-1, caso contrário, é preferível usar escapes \x, \u ou \U como forma de incluir dados não-ASCII em strings.

Para Python 3.0 e além, a política a seguir deve ser usada na biblioteca padrão (ver PEP 3131): Toda a biblioteca padrão deve usar somente identificadores ASCII, e deve usar palavras em Inglês, sempre que possível (em muitos casos, abreviaturas e termos técnicos são usados que não são em Inglês). Além disso, strings e comentários devem ser em ASCII. As únicas exceções são:
  • casos de teste testando os recursos não-ASCII;
  • os nomes dos autores. Autores cujos nomes não estão baseadas na alfabeto latino deve fornecer uma transliteração latina de seus nomes.

Projetos de código aberto com uma audiência global são incentivados a adotar uma política similar.

Importações

Importações devem estar em linhas separadas:
  • Sim:
    import os
    import sys
  • Não: import os, sys
  • Mas é possível usar: from subprocess import Popen, PIPE

Importações ficam sempre no começo do arquivo, após os comentários e a docstring de módulo, e antes da declaração das constantes e globais.

Importações devem estar na seguinte ordem:
  1. da biblioteca padrão
  2. de terceiros
  3. locais, da aplicação

Deve ser colocada uma linha entre cada grupo de importações.

Coloque qualquer especificação relevante para __all__ depois das importações.

Importações relativas para importações intra-pacote são altamente desencorajadas. Sempre use o caminho absoluto do pacote em todas as importações. Mesmo agora que o PEP 328 está totalmente implementado em Python 2.5, seu estilo de importações em relação explícita é ativamente desencorajado: importações absolutas são mais portáteis e, geralmente, mais legíveis.

Quando importar uma classe de um módulo que contenha classes, normalmente não é errado usar isso:

from myclass import MyClass
from foo.bar.yourclass import YourClass

Se houverem problemas com nome, use o nome inteiro do módulo:

import myclass
import foo.bar.yourclass

E use "myclass.MyClass" e "foo.bar.yourclass.YourClass".

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Tamanho da linha e linhas em branco
   3. Codificação e importações
   4. Espaços em branco
   5. Comentários e docstrings
   6. Escrituração de versão e convenções de nomenclatura
   7. Recomendações de programação
   8. PEP 20 - The Zen of Python - de Tim Peters
Outros artigos deste autor

Instalando e configurando o VirtualBox

Leitura recomendada

paramiko - Python + SSH

Qu1cksc0pe - All-in-One Static Malware Analysis Tool

Download de Arquivos com Verificação do Hash SHA 256

Programe em Python no jogo Minecraft com seu filho ou sozinho

Como criar um bot para curtir e comentar perfis do Instagram

  
Comentários
[1] Comentário enviado por removido em 20/04/2010 - 12:00h

Muito bom.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts