Estou codificando um pequeno módulo Python composto de duas partes:
- algumas funções que definem uma interface pública,
- uma classe de implementação usada pelas funções acima, mas que não é significativa fora do módulo.
No início, decidi "ocultar" essa classe de implementação definindo-a dentro da função que a usa, mas isso dificulta a legibilidade e não pode ser usado se várias funções reutilizarem a mesma classe.
Portanto, além de comentários e docstrings, existe um mecanismo para marcar uma classe como "privada" ou "interna"? Estou ciente do mecanismo de sublinhado, mas pelo que entendi, ele só se aplica a variáveis, funções e nomes de métodos.