Jython
Jython (Python en Java) es un lenguaje de programación de alto nivel, dinámico y orientado a objetos basado en Python e implementado íntegramente en Java. Es el sucesor de JPython. Jython al igual que Python es un proyecto de software libre. El lenguaje de programación Jython es prácticamente idéntico a la versión 2.5[1] de Python.
Jython | ||
---|---|---|
Desarrollador(es) | ||
? | ||
Información general | ||
Paradigma | multiparadigma | |
Apareció en | 1997 | |
Diseñado por | Comunidad Jython | |
Última versión estable | 2.7.0 (1 de mayo de 2015) | |
Influido por | Python, Java | |
Sistema operativo | multiplataforma | |
Licencia | GPL (primeras versiones) / Jython Software License (versiones actuales) | |
Ejecución
Para ejecutarlo hay que darle la siguiente línea de comandos en el intérprete de comandos del sistema.
java /directorio_de_jython/jython
Para ejecutar un programa escrito en Jython basta con agregar a la línea de comando el nombre del programa a ejecutar (que puede tener la extensión .py):
java /directorio_de_jython/jython programa_jython
Lenguaje dinámico
Jython al igual que Python, Tcl/Tk, Ruby y otros lenguajes similares es un lenguaje dinámico. Esto quiere decir que se puede escribir y ejecutar el código de un programa al mismo tiempo. De hecho, no es necesario compilar el programa para ejecutar el código en Jython: basta con agregar en la línea de ejecución de Jython el nombre del código a correr para que Jython haga funcionar el programa. Sin embargo, esto se hace a costa del sacrificio en tiempo de ejecución del programa.
Variables
Existen muchos tipos de variables en Jython pero los más importantes son:
- Cadenas.
- Números enteros.
- Números flotantes.
- Números largos, en este tipo de variables debe ser indicado con una l al final del número.
- Números complejos.
- Objetos de Java.
Las variables en Jython, como en Python, se pueden utilizar en cualquier momento del programa: no es necesario declararlas en un lugar determinado. El siguiente ejemplo muestra el uso de las variables. A la variable a se le asigna el valor 5, se imprime y luego se utiliza la variable b
a = 5 # Declaramos y le asignamos a "a" un valor de 5
print a # Se imprime "a"
b = a + 2 # Declaramos y asignamos a "b" el valor de a+2
print b # Se imprime "b"
Aunque no es necesario poner las variables en un lugar concreto, hay restricciones; el siguiente programa nos devolverá un error:
print b
print a
b = a + 2
a = 5
La razón es simple: ni a ni b tienen valor alguno, puesto que no han sido declaradas. Hay que inicializar las variables para utilizarlas.
Las variables tanto en Jython como en Python son genéricas y dinámicas, es decir, se pueden utilizar indistintamente para representar enteros, cadenas, flotantes, clases, etc. y pueden ser definidas o cambiadas de tipo en cualquier momento de la ejecución del programa.
Utilizando Java en Jython
El uso de Java en Jython es bastante fácil: basta indicar qué biblioteca se va a utilizar y llamar a sus funciones como en el siguiente ejemplo:
from java.util import Random
# Asigna una instancia de la clase "Random" a la variable "Aleatorio".
Aleatorio = Random()
# A la variable "b" se asigna un número aleatorio flotante, del 1 hasta aproximadamente el 7.
b = Aleatorio.nextFloat()*6 + 1
print b
Este es un ejemplo de una pequeña ventana usando Swing:
from pawt import swing
import java
def salir(event):
java.lang.System.exit(0)
frame = swing.JFrame('Ejemplo Swing', visible=1)
boton = swing.JButton('¡¡Este es un botón en Swing!!~', actionPerformed=salir)
frame.contentPane.add(boton)
frame.pack()
Referencias
Enlaces externos
- Sitio web oficial de Jython (en inglés).
- Proyecto Jython en SourceForge (en inglés).