我有课
class Foo():
def some_method():
pass
还有另一个班级在同一个模块中:
class Bar():
def some_other_method():
class_name = "Foo"
# Can I access the class Foo above using the string "Foo"?
我希望能够访问Foo
使用字符串“Foo”的类。
如果我在另一个模块中,我可以使用以下方法来执行此操作:
from project import foo_module
foo_class = getattr(foo_module, "Foo")
我可以在同一个模块中做同样的事情吗?
那些家伙在IRC建议我使用映射字典将字符串类名映射到类,但如果有更简单的方法,我不想这样做。
import sys
getattr(sys.modules[__name__], "Foo")
# or
globals()['Foo']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)