python文本小部件获取方法

时间:2013-03-22 07:56:53

标签: python text widget tkinter

我的python Tkinter脚本中有一个文本小部件,我正在尝试获取用户输入的值。我的目的是将文本小部件中的数据与脚本中的其他值(即x,y,z)一起写入txt文件(faultlog.txt),作为单行分隔半列。这就是我的尝试。

...
text=Text(width=30,height=1)
text.place(x=15,y=75)
data=text.get(1.0,END)

lines=[]
lines.append('{};{};{};{} \n'.format(data,x,y,z))
faultlog=open("faultlog","a")
faultlog.writelines(lines)
faultlog.close()
...

而不是在文本文件中给我一行输出,python将其写入txt文件(假设用户输入的数据是“abcdefgh”)

abcdefgh
;x;y;z

只是为了清楚,这就是我想要的

abcdefgh;x;y;z

我做错了什么?我希望这个问题很清楚,我是初学者,所以请简单回答。

1 个答案:

答案 0 :(得分:2)

当你获得小部件的所有文本时,最后还包含一个“\ n”。你可以删除这个最后一个字符:

data=text.get(1.0,END)[:-1]

请注意,这始终与文本长度无关:

>>> "\n"[:-1]
''
>>> ""[:-1]
''