sábado, 9 de janeiro de 2021

Criando um executável de Python

Pessoal,


Como disse antes,  estou aproveitando os limões da pandemia pelo Coronavirus e da mudança do hospital para aprender alguma coisa de programação.

Estudei um pouco de C e achei duas coisas: a linguagem é extremamente poderosa mas difícil de utilizar. Os ponteiros, especificamente, são bem complicados e podem causar um bom estrago se usados erroneamente. Entretanto são fundamentais para operações de R/W em arquivos... Outra coisa: no mundo atual, a falta de uma boa GUI (como a obtida com o Xcode, por exemplo) para o C deixa ele para operações de fundo. Sei lá, foi a impressão que eu tive.

O aprendizado do C foi fundamental para, como li em todos os lugares, ir em frente. Assim, quando comecei a estudar Python, senti que a sintaxe lembra muito, muito mesmo, o C. Com muitas facilidades, diga-se de passagem.

Mas o Python, ao contrário do C, é uma linguagem interpretada e não compilada Assim, qualquer programa que eu fizer, precisarei que o usuário tenha o Python instalado e execute uma linha de comando:

 >python3 teste.py

Não é isso que eu quero. Gostaria de tentar fazer algo mais "profissional". Ainda não cheguei na parte de GUI para Python, mas pelo menos descobri como fazer um executável. Isso serve para Mac, Linux e Windows! Ou seja, o programa é feito onde você quiser, basta compilar em para os 3 sistemas e você terá o executável dele pronto!

Para isso, utilizei o "cx_Freeze".

No Mac, fiz assim:

    >python3

    >>>pip install cx_Freeze --upgrade

Pronto, cx_Freeze instalado.

Para executar, basta ir no Terminal (Linux ou Mac) ou CMD (Windows) e digitar:

     >cxfreeze <pasta_onde_está_seu_arquivo_.py> --target-dir <nome_final_do_seu_programa>

No Mac, para escolher a pasta, basta navegar no Finder até onde está o .py e arrastar o arquivo para o Terminal, logo após digitar o cxfreeze e completar a linha de comando.


Após dar <enter>, vai rodar o programa e, quando terminar, aparecerá uma pasta com o nome do programa e o executável lá dentro (no caso, listExtraS04E01 - primo). Crie um atalho e coloque-o onde quiser.

Execute pelo atalho e pronto!


Com certeza existem opções "mais profissionais". Opções como o cx_Freeze existem essas duas que eu sei:

    PyInstaller: instale com o comando "python3 -m pip install pyinstaller", vá até a pasta do seu programa e execute <pyinstaller yourprogram.py> e pronto (teoricamente). No meu caso, o executável encerrava sozinho (não era crash, apenas encerrava antes que eu fizesse alguma coisa no programa).

    py2exe :para criar executáveis para Windows, não é meu caso

Preferi o cx_Freeze, rodou sem problemas.

Esta é uma boa maneira, bem fácil, de começar. Você pode copiar essa pasta para onde quiser e executar o arquivo lá dentro.

Por hoje é isso!

Nenhum comentário:

Postar um comentário