Python循环导入,无属性错误

Python循环导入,无属性错误,python,Python,这就是问题中的代码 for files in os.listdir('./apps'): if files.endswith(".py"): imported = importlib.import_module(files[:-3]) i=tk.Button(root,text=imported.MainWindow.buttonname,command=imported.MainWindow) 在这段代码中,我在一个名为apps的目录中循环,对于

这就是问题中的代码

for files in os.listdir('./apps'):
    if files.endswith(".py"):
        imported = importlib.import_module(files[:-3])
i=tk.Button(root,text=imported.MainWindow.buttonname,command=imported.MainWindow)

在这段代码中,我在一个名为apps的目录中循环,对于这个目录中的每个.py文件,我都需要导入它和一个名为mainWindow的类(每个.py文件都有一个mainWindow类),但我得到了这个错误

module 'test' has no attribute 'mainWindow'
这是我在test.py中的主窗口类

更新 我试过了

还是有错误


任何帮助都将不胜感激

您的test.py使用
MainWindow
,而代码在倒数第二行使用
.MainWindow
。解决这个问题,它应该会工作,或者至少抛出一个不同的错误:-)。

尝试这样做:

importedmainclass = getattr(importlib.import_module(imported.__name__), 'MainWindow')
   
并在目录中添加一个文件./apps
\uuuuu init\uuuuuu.py
,例如:

def __init__():
    pass

您是否检查并确认
test.py
具有
main窗口
?我将其放在了帖子中,但进行了更新以使其更清晰。您可以演示test.py文件是如何完成的吗?如果您可以共享
test.py
,我们可以尝试重新创建此错误Yup使用test.py codeAh编辑我在代码中修复了此错误,但仍然抛出相同的错误,即它没有属性MainWindow
MainWindow
MainWindow
?您是否删除了这两个输入?我更改了它,使其全部使用MainWindow。您能否编辑问题并提供a)当前代码b)当前错误消息?谢谢您好,我尝试了您建议的第一件事,但仍然出现相同的错误,第二件事我不明白我为什么/如何这样做,如果您能详细说明的话,这会有所帮助。<在进一步的研究中,我发现继续研究这个问题的原因仍然存在
importedmainclass = getattr(importlib.import_module(imported.__name__), 'MainWindow')
   
def __init__():
    pass