Uma das formas de entender o arquivo __main__.py
em pacote Python é fazendo isso de maneira prática, pra isso,
vamos a um exemplo simples. Crie a estrutura:
mypackage
└── __main__.py
Dentro do dander main, coloque um print qualquer:
print('Oi')
Zipe o seu pacote com o módulo "zipfile":
python -m zipfile -c mypackage.zip mypackage/*
Execute o pacote zipado assim:
python mypackage.zip
Verás a saída do "print('Oi')"
Outro exemplo simples. Crie a estrutura:
mypackage
├── __init__.py
└── __main__.py
Dentro do init.py importe o módulo dander main:
import __main__
Dentro do dander main, coloque um print qualquer:
print('Oi')
Depois execute esse package assim:
python -m mypackage
Verás a saída do "print('Oi')"