Noticia Primeros Pasos con Python + Qt #1

Este tutorial va enfocado a enseñar el uso de el framework QT usando Python como lenguaje de programación, para esto podemos usar tanto PySide como PyQt, pero en este tutorial usaremos PySide debido a que al autor de este tutorial le gusta mas la licencia LGPL de PySide que la GPL o Comercial de PyQt.

¿Primero… Que es Python?


Según la Wikipedia:


“Python es un lenguaje de programación interpretado de altísimo nivel cuya filosofía hace hincapié en una sintaxis muy limpia y que favorezca en un código legible.”

Python es un lenguaje de programación multipadradigma, por lo que soporta diferentes paradigmas de programación python por ejemplo soporta: Programación Orientada a Objetos(POO), Programación imperativa(Estructurada) y en menor medida programación Funcional.

¿Solo eso?


No, además es un lenguaje de tipado dinámico, lo que quiere decir que python nos permite asignarles distintos tipos de valores a una misma variable durante la ejecución del programa, unos lo ven como una ventaja otros como una desventaja, dense cuenta ustedes mismos.

Además de lo ya mencionado, Python nos permite (como muchos otros), programación tanto en el entorno web como en el escritorio web, también es multiplataforma, actualmente soporta Gnu/Linux, Windows, Mac osx, Android (Si falta alguno mencionarlos para su modificación).

¿Que es QT?


QT es un framework multiplataforma, desarrollado originalmente por Nokia, para luego ser vendido a Digia, que se utiliza para el desarrollo de aplicaciones, está escrito en C++, pero se puede utilizar en otros lenguajes a través de Bindings (en nuestro caso PySide o PyQt)

Diferencias entre PySide y PyQt


Principalmente

  • Licencia, PySide esta licenciado bajo los términos de la LGPL y PyQT esta bajo los términos de la GPL o bajo licencia comercial, por lo que necesitaríamos pagar en caso de crear una aplicación cerrada.
  • PySide es creado por Nokia, y PyQt por RiverBank.
  • PySide nos ahorra el problema de usar STR cada ves que usamos QString de cada uno de los objetos de QT.

Los cambios completos los podemos detallar Aqui.

Preparación:

Instalamos Qt:


Si tenemos una distro con Kde ya deberiamos tener lo necesario, si no:

sudo apt-get install qt4-dev-tools

Instalamos PySide:


sudo apt-get install pyside pyside-tools

Nuestra Primera Aplicación Python + QT


Nos vamos a nuestro editor de texto favorito, yo les recomiendo que instalen sublime-text2, pero pueden usar el que prefieran, y tipeamos el siguiente código y lo guardamos con el nombre que queramos siempre terminando con la extension “.py”, yo lo guardare como app1.py:




Lo ejecutamos desde consola así:

python app1.py

Les debería aparecer esta ventana







¿Que?, ¿Solo Eso, pues si antes solo tenias consola de que te quejas? ¿Qué esperabas, un Erp? vamos hombre por algo se empieza.

Ahora expliquemos el código:

from PySide.QtGui import *

from sys import exit, argv

Aquí importamos los módulos de necesarios para la ejecución de PySide.

app = QApplication(argv)

Creamos la instancia de Qapplication con el nombre app.

window = Qwidget()

Creamos la instancia de QWidget().

window.setWindowTitle("Primera App PySide")

Ejecutamos el método setWindowTitle, que recibe un String como parámetro para “setear” el titulo de nuestro Qwidget.

window.show()

Mostramos nuestra ventana

exit(app.exec_())

por ultimo ejecutamos el ciclo infinito de ejecución de nuestra QApplication().

Gracias


Gracias para los que me hayan seguido hasta acá y les haya sido útil . Para el próximo tutorial explicare como diseñar nuestras ventanas con QT Designer e importarlas a nuestros proyectos.

Adicional mente les añado el link al foro de desde linux donde tengo un pequeño tema con una pequeña biblioteca de tutoriales y guías de python, que contiene diferentes termas que incluyen:

Tutoriales Python básicos

WxPython

PyQt y PySide

Django

Web2Py

Programación científica en python.

Y muchos mas.


Espero les sirvan, me despido, como siempre un placer pertenecer a esta maravillosa comunidad.




JSlsqaT0ocw


Continúar leyendo...