Python将字符串转化为对应类名的两种方法

way first:

1 from django.utils.module_loading import import_string
2 ValidationError = import_string('django.core.exceptions.ValidationError')
展开

以上代码等同于:

from django.core.exceptions import ValidationError
展开

example: 例如你有个类名为testUser的model类,但是你目前环境下无法导入这个model类,你需要通过字符串转化为对应的model Class,通过第一种方法代码如下:

1 str1=ValidationError('testUser')

 

 

总结,可以直接把字符串转化为类名

way secondly:

使用globals()函数,用法如下:

xxx= globals()[字符串]

可以把对应的字符串转化为对应得类。

 

注意:以上操作不仅仅局限于model,对所有的Python类都是有效的。

如有不对之处,欢迎批评指正。谢谢

 

posted @ 2020-07-09 20:52  二锅头不上头  阅读(4898)  评论(1)    收藏  举报