Like Python, Java is a very popular programming language. We installed Java in Chapter 8, Working with Databases, as a prerequisite to using Cassandra. To run Java code, we need the Java Runtime Environment (JRE). For development, the Java Development Kit (JDK) is required.
Jython is an implementation of Python written in Java. Jython code can use any Java class. However, Python modules written in C cannot be imported in Jython. This is an issue, because many numerical and data analysis Python libraries have modules written in C. The JPype package offers a solution and can be downloaded from http://pypi.python.org/pypi/JPype1 or http://github.com/originell/jpype. The most current JPype version at the time of writing was 0.5.5.2. Once you have downloaded and unpacked JPype, run the following command:
$ python setup.py install
Start the Java Virtual Machine (JVM) with the following line:
jpype.startJVM(jpype.getDefaultJVMPath())
Create a JPype array JArray
with some random values:
values = np.random.randn(7) java_array = jpype.JArray(jpype.JDouble, 1)(values.tolist())
Print each array element as follows:
for item in java_array: jpype.java.lang.System.out.println(item)
At the end, we should shut down the JVM with the following line:
jpype.shutdownJVM()
The following is the code listing from the java_demo.py
file in this book's code bundle:
import jpype import numpy as np from numpy import random jpype.startJVM(jpype.getDefaultJVMPath()) random.seed(44) values = np.random.randn(7) java_array = jpype.JArray(jpype.JDouble, 1)(values.tolist()) for item in java_array: jpype.java.lang.System.out.println(item) jpype.shutdownJVM()
3.21.248.162