首页 > 解决方案 > 如何根据文件夹中的所有类创建对象列表?

问题描述

如果我有这样的课程:

class A(object):
    def __init__(self):
         self.dynamic_objects = []

以及位于同一位置的子文件夹,其中包含可变数量的文件,每个文件都有一个类,它们是同一父类的子类(换句话说,它们具有相同的方法和变量):

class B(Parent):
     def run(self):
         # logic here
         return

我怎样才能使 A 类中的 dynamic_objects 列表自动为子文件夹中的每个文件填充一个对象?所以如果我的文件结构是这样的:

a.py
     /subfolder
         b.py
         c.py
         d.py

我怎样才能使 dynamic_objects 列表充满一个 B 对象、一个 C 对象和一个 D 对象,而无需在该列表中硬编码,而只是将其指向目录?这可能吗?

我想在我的应用程序中执行此操作,以便任何想要扩展应用程序功能的人只需担心在子文件夹中创建一个带有 run 方法的类,而无需编辑 a.py

标签: pythonpython-3.x

解决方案


推荐阅读