Python 3.x 有没有一种不调用方法就访问方法变量的方法?

Python 3.x 有没有一种不调用方法就访问方法变量的方法?,python-3.x,class,tkinter,Python 3.x,Class,Tkinter,我想制作一个简单的GUI,允许用户选择一个excel文件来加载数据,这些数据稍后将用于数学计算。两个模块分开时工作正常。但是,当我尝试使用GUI作为主文件的导入时,如果不调用类方法(该类方法反过来对其进行迭代),我将无法访问所需的var。这很麻烦,因为它应该在按下按钮后才使用此功能 我在做什么根本性的错误吗 GUI脚本 将tkinter作为tk导入 将tkinter.filedialog作为tkf导入 类TestClass(): 定义初始(自我,主): 帧=传统帧(主帧) frame.pack(

我想制作一个简单的GUI,允许用户选择一个excel文件来加载数据,这些数据稍后将用于数学计算。两个模块分开时工作正常。但是,当我尝试使用GUI作为主文件的导入时,如果不调用类方法(该类方法反过来对其进行迭代),我将无法访问所需的var。这很麻烦,因为它应该在按下按钮后才使用此功能

我在做什么根本性的错误吗

GUI脚本

将tkinter作为tk导入
将tkinter.filedialog作为tkf导入
类TestClass():
定义初始(自我,主):
帧=传统帧(主帧)
frame.pack()
self.dialogButton=tk.Button(frame,text=“choose”,command=self.chooseFile)
self.dialogButton.pack(侧面=底部)
def chooseFile(自):
全局文件名
filename=tkf.askopenfilename()
打印(文件名)
导入脚本

将tkinterTest导入为tt
将tkinter作为tk导入
root=tk.tk()
classObject=tt.TestClass(根)
var=classObject.chooseFile()
打印(var)
root.mainloop()

我只想通过GUI访问路径字符串,这样只有在程序启动后按下按钮选择文件时,它才会给我字符串。

删除两行
var=…
print(var)
。在调用GUI出现之前的
root.mainloop
之前运行这些命令。如果您将文件名设置为TestClass的一个属性,那么您可以稍后以classObject.filename的形式访问它。谢谢,这是一个帮助。我并没有使用class属性,而是使用class变量,但这次正确地调用了它。不管怎样,我仍然有很多关于课堂的知识。再次感谢!