
Python é fácil de usar. Nele, você pode encontrar um grande número de bibliotecas para qualquer coisa. E essa é sua principal vantagem. Você não fará nada em algumas linhas de código. Se você precisa de scripts para uso pessoal ou para um público mais experiente em tecnologia, não precisa nem pensar em uma interface gráfica.
No entanto, às vezes seu público-alvo não é muito técnico. As pessoas não se importam em usar seus scripts Python até precisarem olhar para uma linha de código. Nesse caso, os scripts de linha de comando não serão suficientes. Idealmente, você precisa de uma interface gráfica. O objetivo deste post é usar apenas Python.
Bibliotecas Python que você pode usar para uma GUI
Essencialmente, existem três ótimas bibliotecas Python para a GUI; Tkinter, wxPython e PyQT. Olhando para eles, não encontrei nada do que eu gostasse no Python. As bibliotecas Python tendem a abstrair muito bem de problemas super-técnicos. Se eu precisasse trabalhar com programação orientada a objetos, também poderia fazer o download de Java ou .Net.

Este artigo foi traduzido com o suporte do software EDISON, que cuida da saúde dos programadores e do café da manhã e também desenvolve software personalizado .
No entanto, felizmente, me deparei com a quarta opção, de que gostei. Este é PySimpleGUI, eu ainda o uso. Curiosamente, esta biblioteca usa todas as três bibliotecas populares, que foram discutidas acima, mas ao mesmo tempo abstrai de pontos super técnicos
Vamos mergulhar nesta biblioteca e estudá-la enquanto resolvemos um problema real.
Verifique dois arquivos idênticos
Eu disse como fazer isso no meu artigo "3 maneiras rápidas de comparar dados em Python". Podemos usar a primeira seção, verificação de integridade de dados, para tentar criar uma interface de usuário.
De fato, precisamos baixar dois arquivos e selecionar a criptografia que gostaríamos de usar para comparar os arquivos.
Programar a GUI
Para criar uma interface gráfica, você pode usar este código:
import PySimpleGUI as sg layout = [ [sg.Text('File 1'), sg.InputText(), sg.FileBrowse(), sg.Checkbox('MD5'), sg.Checkbox('SHA1') ], [sg.Text('File 2'), sg.InputText(), sg.FileBrowse(), sg.Checkbox('SHA256') ], [sg.Output(size=(88, 20))], [sg.Submit(), sg.Cancel()] ] window = sg.Window('File Compare', layout) while True:
como resultado, obtemos:

Nós conectamos a lógica
Quando existe uma interface do usuário, é fácil entender como conectar o restante do código. Só precisamos acompanhar o que o usuário digita e agir de acordo. Podemos fazer isso muito facilmente com o seguinte código:
import PySimpleGUI as sg import re import hashlib def hash(fname, algo): if algo == 'MD5': hash = hashlib.md5() elif algo == 'SHA1': hash = hashlib.sha1() elif algo == 'SHA256': hash = hashlib.sha256() with open(fname) as handle:
Ele nos dará este resultado:

Considerações finais
Essa pode não ser a interface de usuário mais bonita, mas o PySimpleGUI permite implantar rapidamente interfaces de usuário simples do Python e compartilhá-las com qualquer pessoa. O código necessário para isso é simples e fácil de ler. Você ainda terá um problema ao executar o código para obter a interface do usuário. Por isso, pode ser difícil compartilhar código. Aconselho que você baixe algo como PyInstaller, que transformará seu script python em um arquivo .exe. As pessoas poderão lançá-lo simplesmente clicando nele duas vezes.

Leia também o blog
Empresa EDISON:
20 bibliotecas para
aplicação iOS espetacular