作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
当我调用 setup_all()
时,我想知道 elixir\sqlalchemy 如何知道我在模型中声明的所有实体类?我在我的一个小项目中需要那种功能,但我不知道。我尝试通过 elixir 的 setup_all()
进行步进跟踪,我发现它在“全局”列表(或者是字典?)中保留了所有实体类的集合,但我做不到捕获列表填满的时刻。有什么想法吗?
最佳答案
对于类定义,这更容易(无需导入)
def find_subclasses(cls):
results = []
for sc in cls.__subclasses__():
results.append(sc)
return results
我不确定您是想要这个还是对象。如果你想要对象:
import gc
def find_subclasses(cls):
results = []
for sc in cls.__subclasses__():
for obj in gc.get_objects():
if isinstance(obj, sc):
results.append(obj)
return results
关于python - 如何遍历从特定基类派生的每个类声明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8956928/
我是一名优秀的程序员,十分优秀!