Hay tantos marcos para escribir aplicaciones GUI usando Python. ¿Pero hay algún marco estándar clave? Por ejemplo, tenemos un paquete de .NET / C # en Visual Studio.
Estoy pensando en otras perspectivas también. En el futuro, si doy una entrevista para un trabajo de programador de Python, ¿qué marco de GUI se considerará?
También me pregunto, no hay IDE que integre la GUI y el lenguaje Python. La elección del sabor es buena, pero la elección excesiva se convierte en una distracción.
Respuestas:
Puede escribir aplicaciones Win32 API GUI en Python, si le gusta escribir todo ese código repetitivo : proyecto PyWin32
Personalmente, me gusta wxPython . Es multiplataforma (totalmente compatible con Linux y Windows) y ha existido durante bastante tiempo ... base de soporte decente y mucha documentación / código de ejemplo. Si desea usar esto, eche un vistazo a BoaConstructor . Ese es el IDE para wxPython (o quizás mejor dicho, un IDE escrito en y para wxPython). Es el único RAD IDE específicamente para Python con el que me he encontrado que vale la pena mencionar, salvo el editor Qt UI (el editor Ut de Qt es utilizable tanto para C ++ como para PyQT).
Como Peter mencionó en su respuesta, Tk es la GUI de facto para las aplicaciones antiguas de Python, pero realmente no se ven tan bonitas para el usuario final. Hay algunas extensiones que lo hacen ver un poco mejor y brindan cierta capacidad para diseñar la interfaz de usuario, pero a menos que esté manteniendo una aplicación GUI anterior, no sugeriría molestarse con ella.
pyGTK, también ya mencionado, sería otra buena opción. También es multiplataforma, aunque no he tenido ninguna experiencia personal con el desarrollo de GTK en Windows. PyQT sería una mejor opción, en mi opinión: creo que las GUI creadas con la biblioteca Qt tienen un aspecto y una función superiores a las realizadas con GTK. También encuentro que el mecanismo de evento de señal / ranura de Qt es más fácil de trabajar. YMMV.
Realmente no hay ningún estándar para el desarrollo de la GUI de Python, al menos no lo que he visto, pero de mis colegas desarrolladores de Python con los que he trabajado a lo largo de los años, me han sugerido wxPython y PyQT más que ninguno de los otros kits de herramientas No estoy seguro de si hay un número considerable de puestos de desarrollo de interfaz gráfica de usuario de Python, para ser honesto. La mayor parte del desarrollo de Python que he realizado a lo largo de los años ha sido del lado del servidor, pero eso no quiere decir que no haya varias empresas que ahora busquen la ruta de código abierto para sus aplicaciones GUI.
fuente
Tk solía ser el estándar, pero podría decirse que es simplista y feo. Entonces Qt se hizo bastante popular. Gtk también es posible, y eso cubre los favoritos en las plataformas Linux-ish.
Pero tienes razón, realmente no hay una respuesta obvia. La sobre elección es bastante común en el mundo del código abierto, después de todo.
fuente
No hay un 'estándar' y estoy de acuerdo: la gran cantidad de opciones es un dolor. En cuanto a un IDE de 'herramientas bidireccionales' integrado para Python GUI, también me pregunto por qué parece que no hay ninguno, tal vez porque hay tantos kits de herramientas de GUI que nadie quiere invertir en un IDE para solo uno de ellos.
Dicho esto, PyQt 4.7 con P3k le proporcionará una GUI maravillosa (así como muchas otras características potentes). Consulte http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/introduction.html - "Esta es la guía de referencia para PyQt 4.8.4. PyQt v4 es un conjunto de enlaces de Python para v4 del Qt marco de aplicación de Nokia ".
PyQt está en uso generalizado y hay algunos buenos libros: consulte http://www.qtrac.eu/pyqtbook.html "Programación rápida de GUI con Python y Qt", entre otros (el libro está un poco desactualizado, necesita actualizarse) para P3k).
Hay 2 problemas serios con PyQt:
1) Tiene algunas características claramente `` no pitónicas '', siendo solo una envoltura delgada en las bibliotecas C ++ Qt. Pero recomendé P3k-PyQt 4.7 porque algunos se han abordado en los paquetes 'más recientes y mejores'. Mira esta publicación:
Problemas de diseño de PyQt
2) Para uso comercial, existen tarifas de licencia bastante altas, tanto para PyQt como para Qt.
Una alternativa prometedora a PyQt es PySide de Nokia, otro contenedor de Python para Qt que es completamente de código abierto (aunque eso no incluye la licencia Qt).
Saber mucho sobre Qt no es algo malo en el mercado, y lo obtendrá de PyQt, por lo que le tendré que considerarlo seriamente (o PySide) si está tratando de decidirse por una plataforma GUI para convertirse en experto en .
Independientemente de lo que elija, sugeriría evitar tkinter en su mayor parte, a pesar de que está `` listo para usar '' con Python, porque es extremadamente limitado, y la OMI tiene un aspecto crudo y anticuado.
HTH
fuente
pyGTK es prolífico. Es bastante fácil de usar y hace que las GUI no se vean medio mal.
fuente
Gtk3 es un marco GUI que es muy maduro. Tiene enlaces nativos de Python (GObject Introspection) y mucha documentación . Si está haciendo bastante GUI, considere usar Anjuta . Anjuta tiene una interfaz de arrastrar y soltar para configurar sus widgets fácilmente.
WxWidgets es bastante bueno, sin embargo, no hay una manera fácil de generar devoluciones de llamada de Python generadas dinámicamente como lo hace Anjuta para Gtk.
PyGtk ahora está en desuso en favor de los enlaces Gtk3 a Python (Introspección GObject)
PyQt también es un jugador en Python GUI, pero no tiene una gran comunidad.
BoaConstructor se mantiene por más tiempo y sería una tontería usarlo.
fuente