将字符串转为类名

  • Post author:
  • Post category:其他


使用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(类名(), 与变量名相同的字符串),通过字符串获取变量数据



版权声明:本文为qq_33267306原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。