
Python es fácil de usar. En él puedes encontrar una gran cantidad de bibliotecas para cualquier cosa. Y esta es su principal ventaja. No harás nada desde unas pocas líneas de código. Si necesita guiones para uso personal o para un público experto en tecnología, ni siquiera tiene que pensar en una interfaz gráfica.
Sin embargo, a veces su público objetivo no es muy experto en tecnología. A las personas no les importa usar sus scripts de Python hasta que necesiten mirar una línea de código. En este caso, los scripts de línea de comando no serán suficientes. Idealmente, necesita una interfaz gráfica. El propósito de esta publicación es usar solo Python.
Bibliotecas de Python que puede usar para una GUI
Esencialmente, hay 3 excelentes bibliotecas de Python para la GUI; Tkinter, wxPython y PyQT. Al mirarlos, no encontré nada que me gustara de Python. Las bibliotecas de Python tienden a abstraerse muy bien de problemas súper técnicos. Si necesitaba trabajar con programación orientada a objetos, podría descargar Java o .Net.

Este artículo fue traducido con el apoyo del software EDISON, que se ocupa de la salud de los programadores y su desayuno , y también desarrolla software personalizado .
Sin embargo, afortunadamente, encontré la cuarta opción, que me gustó. Esto es PySimpleGUI, todavía lo uso. Por extraño que parezca, esta biblioteca utiliza las 3 bibliotecas populares, que se discutieron anteriormente, pero al mismo tiempo resúmenes de puntos súper técnicos
Vamos a sumergirnos en esta biblioteca y estudiarla mientras resolvemos un problema real.
Verifica dos archivos idénticos
Le dije cómo hacer esto en mi artículo "3 formas rápidas de comparar datos en Python". Podemos usar la primera sección, comprobación de integridad de datos, para intentar crear una interfaz de usuario.
De hecho, necesitamos descargar dos archivos y seleccionar el cifrado que nos gustaría usar para comparar los archivos.
Programar la GUI
Para crear una interfaz gráfica, puede 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, obtenemos:

Conectamos la lógica
Cuando hay una interfaz de usuario, es fácil entender cómo conectar el resto del código. Solo necesitamos hacer un seguimiento de lo que ingresa el usuario y actuar en consecuencia. Podemos hacer esto muy fácilmente con el siguiente 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:
Nos dará este resultado:

Pensamientos finales
Puede que esta no sea la interfaz de usuario más hermosa, pero PySimpleGUI le permite implementar rápidamente interfaces de usuario simples de Python y compartirlas con cualquier persona. El código que necesita para esto es simple y fácil de leer. Aún tendrá un problema al ejecutar el código para obtener la interfaz de usuario. Debido a esto, puede ser difícil compartir código. Te aconsejo que descargues algo como PyInstaller, que convertirá tu script de Python en un archivo .exe. Las personas podrán iniciarlo simplemente haciendo clic en él dos veces.

Lee también el blog
Empresa EDISON:
20 bibliotecas para
espectacular aplicación para iOS