Or containers.
Containers are fine for a server after installing the runtime, which is already one too many steps. There isn't a self-contained app format that can run without installing something else before starting it.
Jython is a thing.
With the JVM you had to reimplement your language to target it, or design a new one. WASM was planned from the start to be a target for existing compiler frameworks such as LLVM and GCC.
With Jython you could not use extensions that were designed for CPython. With WASM you can. Take a look at Pyodide, they have ported most of the scientific Python stack to WASM, that’s not possible with Jython.
That is the thing with WebAssembly marketing, not being aware of bytecode formats history.
Java, by the way, also isn't stopping you from storing all your data in one big ByteBuffer, which is how WASM handles memory.
Jython has been a casualty of the 2 => 3 transition.