我在我的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
Text用一个尾随的换行符输出它的内容。你可以使用data.strip()它返回字符串的一个副本而不用结尾空格。
当您获得所有文本时,最后还会包含“\ n”。你可以像这样删除最后一个字符:
data=text.get(1.0,END)[:-1]
请注意,这总是独立于文本长度的长度:
>>> "\n"[:-1]
>>> ""[:-1]