[vc_row][vc_column][vc_column_text]Existe un momento, en el camino de todo programador, que debe pasar de los ejemplos básicos y comenzar a construir una interface gráfica para su programa.
En Python, los pasos para comenzar con la programación de un interface de usuario no son terriblemente complejos, pero requiere que el usuario empiece a tomar algunas decisiones. Por su naturaleza como un lenguaje de programación de propósito general con intérpretes disponibles en todos los sistemas operativos comunes, Python tiene que ser bastante agnóstico en cuanto a las opciones que presenta para crear interfaces gráficas de usuario.
Afortunadamente, hay muchas opciones disponibles para los programadores que buscan crear una manera fácil para que los usuarios interactúen con sus programas. Existen enlaces para varios frameworks de interface de usuario en una variedad de plataformas, incluidas las nativas Windows, Mac y Linux, y muchas que funcionan en las tres.
En este punto, tiene que evaluar bien el hecho de necesitar una interface gráfica. Al momento de desarrollar una aplicación, también debe considerar una interface web, especialmente si cree que los usuarios puedan querer alojar su aplicación de forma remota, y proyectos como Django, Flask o Pyramid hacen que esto sea sencillo. Incluso puede usar una librería como pywebview para colocar una capa delgada alrededor de una aplicación web en una ventana GUI más nativa.
O puede utilizar un framework como Pyforms para crear una experiencia coherente en la web, la línea de comandos y el escritorio, todo con una única base de código.
A continuación tres fantásticas bibliotecas de código abierto para empezar con las GUI:[/vc_column_text][/vc_column][vc_column][vc_single_image image=»1776″ img_size=»full» alignment=»center»][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]
PyQt
PyQt implementa la popular biblioteca Qt, por lo que si está familiarizado con el desarrollo de Qt en otro idioma, quizás desde el desarrollo de aplicaciones nativas para KDE u otro entorno de escritorio con Qt, es posibles que ya esté familiarizado con Qt. Esto abre la posibilidad de desarrollar aplicaciones en Python que tengan un aspecto familiar en muchas plataformas, al tiempo que aprovechan las herramientas y el conocimiento de la gran comunidad de Qt.
PyQt tiene doble licencia bajo licencia comercial y GLP, similar al proyecto Qt en sí, y la compañía principal que brinda soporte a PyQt ofrece una licencia de FAQ para ayudar a entender lo que esto significa para su aplicación. Para otra opción para usar las bibliotecas Qt con Python, considere la posibilidad de verificar PySide, que está disponible bajo LPGL.[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]
Tkinter
Si hubiera un único paquete que podría denominarse el kit de herramientas GUI «estándar» para Python, sería Tkinter. Tkinter es una envoltura alrededor de Tcl/Tk, una interfaz gráfica popular y el emparejamiento de idiomas que se popularizó por primera vez a principios de los 90. La ventaja de elegir Tkinter es la gran cantidad de recursos, incluidos libros y ejemplos de código, así como una gran comunidad de usuarios que pueden ayudarlo si tiene alguna pregunta. Los ejemplos simples son fáciles de comenzar y bastante legibles para los humanos.
Tkinter está disponible bajo la licencia de Python, además de la licencia BSD de Tcl/Tk.[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]
WxPython
WxPython trae la biblioteca de GUI multiplataforma de wxWidgets desde su C ++ nativo a Python. WxPython es un enfoque un poco más moderno, que parece un poco más nativo que Tkinter en diferentes sistemas operativos, ya que no intenta crear su propio conjunto de widgets (aunque estos pueden tener un aspecto similar al de los componentes nativos). Es bastante fácil para empezar, y tiene una creciente comunidad de desarrolladores. Es posible que necesite agrupar wxPython con sus aplicaciones, ya que no se instala automáticamente con Python.
¿Trabajando con Python 3? Consulte wxPython’s Project Phoenix, una reescritura del proyecto que funcionará con la versión más nueva de Python.
WxPython usa la Licencia de Biblioteca wxWindows de su proyecto principal, que está aprobado por OSI.[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]Estas no son las únicas opciones que tiene disponibles para usted, ni siquiera de lejos. Para obtener más opciones, consulte la página «Programación de GUI en Python» en la wiki oficial de Python Software Foundation, donde encontrará docenas de otras herramientas. Las soluciones están disponibles para vincular Python a muchas bibliotecas de widgets diferentes y herramientas de GUI como GTK +, FLTK, FOX y otras. Si bien los principiantes querrán buscar y probablemente evitar proyectos que solo son implementaciones parciales, o aquellos que se mantienen de manera más activa, encontrarás muchos ajustes adecuados para una variedad de situaciones.
¿Tienes un favorito que no mencionamos aquí? Háganos saber en los comentarios a continuación!
Este artículo esta basado en 3 open source Python GUI frameworks[/vc_column_text][/vc_column][/vc_row]