假设有如下的json数据, name为需要创建实例的class的名字,arguments为 class的构造函数的参数.
{ "name": "Student" "arguments": [ {"name": "Bob"}, {"age": 14} ] }
同时有个class如下
class Student(object): def __init__(self, name, age): self.name = name self.age = age def get_name(self): return self.name def get_age(self): return self.age
同时再加一个限制条件, class 为第三方定义出来的,并且不同class的构造函数,参数个数都无法预知.程序能够利用的只有json格式的参数.
从json数据转到python对象可以用json模块来实现,那提取到的参数怎么才能够通过Student(keyword=argument)这样的方式创建出实例呢?
核心方法是通过globals()获取类对象并创建实例
看看这个会不会对你有帮助: Python描述器引导