Python 将字符串转成类(非判断实现)
字符串转成类
本人了解的实现方法只有两种:
- 通过判断字符串的,返回类对象(此处不做介绍)
- 利用globals关键字实现
- 如有其他方法求分享
代码如下:
类文件classfp.py:
class AA:
def __str__(self):
return "aa"
class BB:
def __str__(self):
return "bb"
class CC:
def __str__(self):
return "cc"
调用文件main.py
from classfp import *
def ret_obj(obj_str):
# 此处为实现关键 通过字符串转成类名
object = globals()[obj_str]
return object
if __name__ == '__main__':
str_list = ['AA', 'BB', 'CC']
for it in str_list:
obj = ret_obj(it)
print(obj())
结果输出:
aa
bb
cc
如有错误或侵权,请联系作者删除或者修改