我正在尝试让我的代码模拟聊天。到目前为止,我没有问题这样做,但问题是,我想让它,当聊天达到一定数量的行数,它清除聊天和清空文本文件的内容到另一个存档文件。目前,我正在使用fs.truncate方法为此,但是它不起作用。请建议任何有用的方法。我正在使用python。
fs = open("forum.text", 'r')
root3 = Tk()
root3.geometry('500x500')
full_chat = Label(root3, text=fs.read(), font=('Arial', 8, "bold")).pack()
chat_text = Text(root3, height=5)
line_count = len(fs.readlines())
if line_count in [32, 33, 34, 35, 36, 37]:
fs4 = open("forum.text", 'a')
fs4.write("\nChat is purging soon! Beware!")
elif line_count >= 38:
fs2 = open("forum.text", 'w')
fs3 = open("archive.text", 'w')
fs3.write(fs.read())
fs2.truncate()
chat_text.pack()
def post_msg():
msg = chat_text.get('1.0', 'end-1c')
fs1 = open("forum.text", 'a')
fs1.write('\n' + username + ' says: ' + msg)
fs1.close()
root3.destroy()
forum(username)
Button(root3, text="Post to Chat", command=post_msg).pack()
1条答案
按热度按时间wz1wpwve1#
我认为你需要用r+打开你的文件,并使用truncate(0)。