我的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
我做错了什么?我希望这个问题很清楚,我是初学者,所以请简单回答。
答案 0 :(得分:2)
当你获得小部件的所有文本时,最后还包含一个“\ n”。你可以删除这个最后一个字符:
data=text.get(1.0,END)[:-1]
请注意,这始终与文本长度无关:
>>> "\n"[:-1]
''
>>> ""[:-1]
''