您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python:从字符串引用类吗?

Python:从字符串引用类吗?

如何使用包含类名称的字符串来引用类本身?

类并不特殊,它们只是变量中包含的值。如果您说过:

class X(object): pass

在全局范围内,则变量“ X”将是对类对象的引用。

您可以使用’globals()’将当前脚本/模块的全局变量作为字典获取,因此:

classobj= globals()[self.__class__.__name__]
print classobj.var

locals()也可用于局部变量;在它们之间,您永远不需要使用可怕的eval()变量来访问变量。)

但是,正如David所指出的那样,self.__class__已经 是了classobj,因此无需继续按名称全局变量获取它;self.__class__.var很好 虽然确实是:

print self.var

将是通常的简单方法。只要实例不会用其他东西覆盖名称类成员就可以用作其实例的成员。

python 2022/1/1 18:45:46 有336人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶