【发布时间】:2022-06-29 07:35:02
【问题描述】:
我不明白为什么如果我尝试在两个 python 脚本之间传递一个 tkinter 条目的值,我得到的是 '!entry' 而不是值。
第一个脚本:
from tkinter import *
w=Tk()
def send(e):
import snd
e=Entry(w)
e.pack()
b=Button(w,command=lambda:send(e.get()))
b.pack()
w.mainloop()
第二个脚本:
from __main__ import *
print(e)
谢谢
【问题讨论】:
-
也许您可以考虑在您的第二个脚本中添加一个函数,而不是依靠
import snd来做正确的事情。在您的第一个脚本的开头导入您的snd模块,然后从您的send函数调用包含在snd中的函数并将e 的值传递给它。 -
同时从你的第二个脚本中去掉
from __main__ import *。你得到.!entry的原因是,当你从main 导入时,你得到e的值,在你的第一个脚本的全局范围内,它是一个入口小部件,而不是e函数内的e。跨度>
标签: python-3.x variables tkinter tkinter-entry