我有一个名为foo
的模块,它定义了一个类Foo
并实例化了多个该类的对象。
在其他模块中,我可以通过import foo
导入该模块,并通过以下方式获取已实例化的Foo
对象列表:
[getattr(foo,f) for f in dir(f) if isinstance(getattr(foo,f), foo.Foo)]
如果我能在模块foo
内部完成这个操作将会非常方便。但是按照当前的写法,在foo
内使用名称foo
没有意义,而改为使用self
也无济于事。
有没有一种方法可以在该模块内使用内省来查找此类的所有实例?我希望能够避免制作列表并附加每个实例的方式。