我正在尝试使用PyBee的VOC转译器在JVM上运行的Python代码中生成随机数。目前,看起来不包括 Python random
模块,那么如何生成随机数呢?
这是我尝试转译的代码:
from random import randrange
print(randrange(5))
这是我在 Java 中运行类文件时的错误:
Exception in thread "main" java.lang.ClassCastException: org.python.java.Module (in module: Unnamed Module) cannot be cast to org.python.Callable (in module: Unnamed Module)
at python.example.module$import(example.py:3)
at python.example.main(example.py)
看起来我的Python代码可以访问所有标准的Java库,所以我只需要用Java模拟random
模块。
from java.util import Random
r = Random()
randrange = r.nextInt
print(randrange(5))
如果我想在部署到JVM或Android之前在Python上测试我的代码,我可以将randrange()
函数作为参数传递。