QPython - Interprete de Python para Android


QPython es una aplicación para Android basada en SL4A y Python-for-Android que fomenta la distribución de scripts a través de códigos QR. La aplicación proporciona un interprete de Python, un editor de código y un repositorio de paquetes específico.

QPython constituye una forma rápida y sencilla de ejecutar scripts Python en dispositivos Android. No es posible compilar las aplicaciones para QPython (apk), pero puedes distribuir tus aplicaciones mediante códigos QR. No obstante, una aplicación hecha para QPython es una aplicación válida de SL4A (con algunas modificaciones, por ejemplo el módulo androidhelper de QPython se llama android en SL4A), y si es posible crear APKs con SL4A y Python-for-Android.

Puedes obtener mas información en la página oficial de qpython, y puedes descargar QPython en Google Play Store.

Para desarrollar scripts desde el PC y ejecutarlos con QPython te recomiendo QPyDesk, que es un editor Python y generador de códigos QR en tiempo real que creé yo mismo para facilitar el desarrollo de aplicaciones que se ejecutan en QPython. Es totalmente gratuito y portable, no requiere instalación.

Existen dos versiones:

En mi opinión, aprender a programar en Python debería hacerse en PC, de modo que en Android utilizaré directamente QPython 3L.

Al ejecutar QPython 3L aparece el siguiente menú:

QPython 3L - Menú Principal

Hay un botón principal con el logo de Python. Si lo pulsas aparece un menú con las siguientes opciones:

La opción Read script from QRCode merece una mención especial: Los códigos QR suelen utilizarse para codificar URLs, de modo que al leerlos con la cámara de un dispositivo móvil el navegador web abre esa dirección. Sin embargo, un código QR no representa necesariamente una URL. Puedes codificar un script a QR y leerlo con QPython para ejecutarlo en tu móvil, pero la capacidad de almacenamiento de un código QR es limitada, y los scripts de gran tamaño no pueden ser representados en un QR. En estos casos lo que se puede hacer es codificar un pequeño script que descargue el script principal y lo ejecute (con urllib y exec). Esto es lo que hago en la sección QPython-QRScripts, échale un vistazo.

Debajo del botón con el logo de Python hay una serie de iconos:



QPython Console


La consola interactiva de QPython funciona exactamente igual que la de CPython:

Consola QPython3


QEdit


Puedes editar tus scripts directamente desde tu dispositivo utilizando QEdit. Es un buen editor, pero suele ser preferible conectarse al dispositivo mediante FTP y editar los scripts desde el ordenador. No obstante, QEdit resulta útil a la hora de aplicar pequeñas correcciones en los scripts.

QEdit - Editor QPython

Para conectarte mediante FTP y editar los scripts en el dispositivo de forma remota puedes utilizar servidor_pyftpdlib.py. También está disponible como QRCode en QPython-QRScripts.