使用globals函数将字符串转为类名
如下:
class Data:
def __init__(self):
self.name = 'kelly'
def hello(self):
print('hello')
#直接使用字符串报错
res = Data().hello()
#res = 'Data'.hello()
res1 = globals()['Data']().hello()
#通过字符串获取变量数据(变为类中的变量名)getattr(类名(), 与变量名相同的字符串)
f = Data().name
print(f)
f1 = getattr(Data(),'name')
print(f1)
也就是说globals()['Data'],就是将字符串Data变为类名Data
getattr(类名(), 与变量名相同的字符串),通过字符串获取变量数据