当使用chaquopy for android时,从java调用模块不会运行__init__方法。
PyObject utilModule = py.getModule("utils.Utils").get("Utils");在没有构造函数的情况下创建对python的对象引用。有没有办法做到这一点,而不是额外的"init“函数,并在创建后调用该函数?
发布于 2019-05-31 19:06:34
假设utils.Utils是一个模块,而Utils是该模块中的一个类,那么您的代码只是获取对该类的引用。如果你想实例化这个类,你可以这样做:
PyObject utilObj = py.getModule("utils.Utils").callAttr("Utils");或者这样:
PyObject utilClass = py.getModule("utils.Utils").get("Utils");
PyObject utilObj = utilClass.call();如果您想传递构造函数参数,只需将其添加到callAttr或call的参数列表末尾即可。
请参阅the documentation中的ZipFile示例。
https://stackoverflow.com/questions/56386722
复制相似问题