Jython is the Python implementation that runs on the Java Virtual Machine.
Jython, formerly called JPython, is implemented in Java and compiles or interprets Python code for execution on the JVM. That design lets Python programs interact directly with Java classes and libraries, giving developers access to the large Java ecosystem while retaining Python’s language style. Jython can also be embedded in Java applications and launched through its own command-line interpreter.
The project began as JPython in the late 1990s under Jim Hugunin and was renamed Jython in 1999. Its JVM foundation distinguishes it from CPython, the reference implementation primarily written in C. PyPy is a separate implementation focused on techniques such as just-in-time compilation, while IronPython targets Microsoft’s .NET runtime rather than the JVM.
Jython should not be assumed to behave exactly like CPython. Compatibility depends on the Python language version and on whether a package relies on CPython-specific C extensions. Its strongest historical advantage is Java interoperability: Java classes can be imported and used from Jython code, making it useful in environments where Java infrastructure is already established.