Python 如何访问类范围外的变量定义的浏览按钮类
我调用了一类browse按钮,从main函数中选择文件位置。此类具有browse函数来捕获存储路径的文件路径变量。现在我只想在这个类之外使用class函数中定义的这个文件路径,比如在类范围之外打印这个变量 我已经尝试过将loc作为全局的,其他的访问方法,但没有一个有效,我想这是因为参数被传递给类 “使用Tkinter模块” 类Browsetk.Frame,对象: 这里定义了uuuu init uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuwidgets,uu display uuwidgets,然后我就, def browseself: 浏览.xlsx文件或所有文件,然后将其放在条目上。 self.filepath.setfd.askopenfilenameinitialdir=self.\u initaldir, filetypes=self.\u文件类型 printself.filepath.get,用户选择的ATP自身路径 loc=self.filepath.get要在类外超出此值吗 我想打印“loc”值,以便在类范围内和类范围外打印 我如何才能访问相同的。我猜这个问题是由我的类的参数引起的,尽管不确定。目前,loc是browse函数中的一个局部变量,当browse函数返回时,它将不再存在。如果您将其写为:Python 如何访问类范围外的变量定义的浏览按钮类,python,python-2.7,tkinter,Python,Python 2.7,Tkinter,我调用了一类browse按钮,从main函数中选择文件位置。此类具有browse函数来捕获存储路径的文件路径变量。现在我只想在这个类之外使用class函数中定义的这个文件路径,比如在类范围之外打印这个变量 我已经尝试过将loc作为全局的,其他的访问方法,但没有一个有效,我想这是因为参数被传递给类 “使用Tkinter模块” 类Browsetk.Frame,对象: 这里定义了uuuu init uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuwidget
self.loc = self.filepath.get()
然后,如果您有一个名为b的浏览对象,您可以只写b.loc来访问它
如果即使手头没有Browse对象也要访问该变量,则需要一个类变量。设置为:
Browse.loc = self.filepath.get()
并通过Browse.loc访问。类变量的问题与所有全局变量的问题相同——如果有两个浏览对象呢?如果您试图从多个线程访问类变量,该怎么办?如果答案对您有用,您可以通过单击数字和上/下箭头下方的灰色勾号来接受它。您可以随时更改您对某个问题接受的答案,但您可能希望延迟接受一个答案,以鼓励其他可能更好的答案。人们不太可能回答已经有公认答案的问题。