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.5Is Jython the same language as Python? de Python.
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).
Categoría:Compiladores e intérpretes libres Categoría:Implementaciones de Python Categoría:Lenguajes interpretados Categoría:Lenguajes implementados en Java Categoría:Software de 1997