关于TKinter的一个问题
from tkinter import *root = Tk()
text = Text(root, width=20, height=5)
text.pack()
def check():
text.insert(INSERT, "1")
contents = text.get(1.0, END)
print(contents)
if contents == "1":
text.insert(INSERT, "2")
Button(root, text="检查", command=check).pack()
mainloop()
请问一下,我的程序在第一次执行的时候,为什么在if那里不能接着执行下去,第一次content的值应该就是1啊!求大神解答。。。
本帖最后由 疾风怪盗 于 2020-8-29 10:56 编辑
看你代码像是对的,为什么没有执行if是因为if contents == "1":判断为false
print(contents)contents打印出啦好像是1和一个回车
为什么会有回车,不知道了,改成下面这样能运行,但是原因不清楚
contents = text.get(1.0, 'end')[:-1] 疾风怪盗 发表于 2020-8-29 10:46
看你代码像是对的,为什么没有执行if是因为判断为false
contents打印出啦好像是1和一个回车
为什么会有回 ...
但是我想只让if那个语句只执行开头的一次,到第二次就不执行If里面的语句了,请问有什么办法可以实现吗 差不多先生air 发表于 2020-8-29 10:56
但是我想只让if那个语句只执行开头的一次,到第二次就不执行If里面的语句了,请问有什么办法可以实现吗
contents = text.get(1.0, 'end')[:-1]
刚才想错了,改成这样,把最后一位去掉 差不多先生air 发表于 2020-8-29 10:56
但是我想只让if那个语句只执行开头的一次,到第二次就不执行If里面的语句了,请问有什么办法可以实现吗
判断不为1就不执行了,你加了个2,应该来说是行的,现在就是问题不知道为什么1后面会出现一个回车 疾风怪盗 发表于 2020-8-29 10:57
刚才想错了,改成这样,把最后一位去掉
非常感谢!
页:
[1]