我正在创建我的第一个python包。
在__init__.py
中,我从模块导入并打开对象App
。
from app import App
app = App()
app.py
:
class App(tk.Tk):
def __init__(self):
#Create App
tk.Tk.__init__(self)
self.geometry("1000x550")
self.title("Game")
self.container = tk.Frame(self).grid()
然后,在另一个模块game.py
中,我需要访问在app
初始化app.container
时创建的app
和__init__.py
。
我试过了:
from app import App
# Does not retrieve variables
from __init__ import app
# Does not retrieve object
from app import App
app = App()
# Intialized the object twice
答案 0 :(得分:1)
您不应在App
文件中创建__init__.py
的实例。包只应提供对象的定义。当然也有例外,但刚开始时你不应该这样做。
您的__init__.py
文件应该只包含此内容:
from app import App
假设它位于名为“mypackage”的文件夹中,您需要一个应用程序,您可以这样做:
from mypackage import App
app = App()