Estou começando com Python (é hora de tentar) e procuro algumas das melhores práticas.
Meu primeiro projeto é uma fila que executa experimentos de linha de comando em vários segmentos. Estou começando a obter um main.py
arquivo muito longo e gostaria de dividi-lo. Em geral, estou procurando: Como os programadores de python organizam vários arquivos de origem? Existe uma estrutura específica que funciona para você?
Minhas perguntas específicas incluem:
- Cada classe deve estar em um arquivo separado?
- Como devo organizar os testes de unidade relativos ao código-fonte?
- Onde devo colocar os comentários do documento, especificamente aqueles para operação de linha de comando?
- Se eu usar vários diretórios, como faço para importar classes entre eles?
Provavelmente posso tirar algumas de minhas próprias conclusões aqui por tentativa e erro, mas prefiro começar de algo bom .
python
unit-testing
code-organization
Andres Jaan Tack
fonte
fonte
Respostas:
O artigo que Eric apontou é incrível porque cobre detalhes da organização de grandes bases de código Python.
Se você chegou aqui do Google e está tentando descobrir como dividir um grande arquivo de origem em vários arquivos mais gerenciáveis, resumirei o processo brevemente.
Suponha que você atualmente tenha tudo em um arquivo chamado
main.py
:utils.py
para este exemplo)main.py
parautils.py
main.py
adicionar uma única linha no topo:import utils
Conceitualmente, o que isso faz é criar um novo módulo chamado
utils
em outro arquivo de origem. Você pode então importá-lo onde for necessário.fonte
A maneira como você deve organizar seu código e testes é exatamente a mesma que faria para qualquer linguagem OO.
Respostas do jeito que eu faço. Pode não ser certo, mas funciona para mim
__init__.py
arquivos relevantes estão nas pastas. é apenas um simples caso defrom module import class
fonte