[英]Importing module that imports another module(s) in Python
我目前正在嘗試重寫一個舊的應用程序,因為首先,我想稍微清理一下結構。 我在導入模塊時遇到了問題,我已經用盡了在網絡上找到的幾個選項,所以是時候尋求幫助了。
相關結構為:
root/
__init__.py
app.py
interface/
__init__.py
darkMotive.py
mainWindow.py
應用程序
import interface.mainWindow
if __name__ == "__main__":
root = tk.Tk()
main = mainWindow(root)
title = root.title("app")
main.pack(side="top", fill="both", expand=True)
root.mainloop()
主窗口.py
import darkMotive
import tkinter as tk
class mainWindow(tk.Frame):
def __init__(self, *args, **kwargs):
[rest of the code]
黑暗動機.py
import tkinter as tk
[other classes definitions]
我的問題是,當我嘗試運行 app.py 時,出現此錯誤:
Traceback (most recent call last):
File "X:/x/xxx/app.py", line 2, in <module>
import interface.mainWindow
File "X:\x\xxx\interface\mainWindow.py", line 1, in <module>
import darkMotive
ModuleNotFoundError: No module named 'darkMotive'
但是當我單獨運行 mainWindow.py 時,它可以工作。
我做錯了什么? 你能指出我正確的方向嗎? 模塊darkMotive 不應該與mainWindow 一起導入app.py 的命名空間嗎?
這不符合評論,但是您可以嘗試以下操作嗎?
主窗口.py
from interface import darkMotive
應用程序
from interface.mainWindow import mainWindow
您可能想要重命名mainWindow.py
,因為它與類名沖突。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.