我正在使用Python并尝试使用Jython调用一些Java / Scala库。我正在使用的一个Scala库具有单例对象,可以从Java这样调用它:(请参见this answer)
Person$.MODULE$
我无法在代码中执行此操作,因为$符号是Python中的语法错误:
person = Person.MODULE$.apply()
^
SyntaxError: no viable alternative at character '$'
如何从Python / Jython访问此对象?
答案 0 :(得分:0)
我找到了使用反射的解决方案。带有$符号的类的名称作为字符串文字提供。
from java.lang import Class
person = Class.forName("full.path.to.Person$").getField("MODULE$").get(None)