我在使用从一个函数到另一个函数的变量时遇到了问题。
这是我的代码:
import tkinter as tk
def form ():
textVar = tk.StringVar()
entry0 = tk.Entry(self, textvariable = textVar).pack()
def toPrint():
texto = textVar.get()
print(texto)
def button():
button0 = tk.Button(text="Summit", command = toPrint).pack()
现在,在toPrint()中调用的变量是form()的本地变量,因此我不能在不使用global的情况下使用它,但这会导致我的其余代码出现问题,因为我使用的是form()而不是曾经,有没有其他方法可以解决它?
如果解释很简单,我会很感激,我还是初学者。
我已经在SO中搜索了这个,但我无法理解答案。
答案 0 :(得分:2)
我是英语的外国人,所以我为我的不礼貌或错误使用英语单词而道歉。只是想说我真的不是故意的。
对于这个问题,也许你可以试着将它们放在同一个班级。并尝试将要调用的变量多次作为类的属性。
例如:
class myclass():
def __init__ (self):
self.textVar = tk.StringVar()
self.entry0 = tk.Entry(self, textvariable = textVar).pack()
def toPrint(self):
texto = self.textVar.get()
print(texto)