Python 识别Tkinter文本小部件中新的/已修改的单词

Python 识别Tkinter文本小部件中新的/已修改的单词,python,tkinter,Python,Tkinter,识别Tkinter文本小部件中已修改的单词的最佳方法是什么 现在,每当用户修改文本时,我都会检查并标记新文本: text = Text(frame) text.bind('<<Modified>>', check_for_edits) text_before_user = text.get('1.0', END) def check_for_edits(event=None): flag = text.edit_modified() if flag:

识别Tkinter文本小部件中已修改的单词的最佳方法是什么

现在,每当用户修改文本时,我都会检查并标记新文本:

text = Text(frame)
text.bind('<<Modified>>', check_for_edits)
text_before_user = text.get('1.0', END)

def check_for_edits(event=None):  
    flag = text.edit_modified()
    if flag:
        text_after_user = text.get('1.0', END)
        if text_after_user != text_before_user:
            find_differences(text_after_user, text_before_user)
    # Resets edit_modified
    text.edit_modified(False)
text=文本(框架)
text.bind(“”,检查是否有编辑)
text\u before\u user=text.get('1.0',END)
def check_以进行编辑(事件=无):
flag=text.edit_modified()
如果标志:
text\u after\u user=text.get('1.0',END)
如果用户之后有文本!=用户之前的文本:
查找用户之间的差异(用户之后的文本,用户之前的文本)
#重置已修改的编辑
text.edit\u modified(False)

有没有更好的方法不需要检查文本小部件的全部内容?

您真的关心对单词的更改,还是对任意字符序列的更改?你正在处理的数据有多大?至少是文字的变化,不过最好是跟踪任何字符的变化。数据可能多达一百万行文本。你打算让人们编辑一百万行文本文件吗?一百万行是为文本设置的任意限制,它充当笔记本。更现实地说,我希望用户在数千行中有一些行,可以使用标签进行搜索。你真的关心对单词的更改,还是对任意字符序列的更改?你正在处理的数据有多大?至少是文字的变化,不过最好是跟踪任何字符的变化。数据可能多达一百万行文本。你打算让人们编辑一百万行文本文件吗?一百万行是为文本设置的任意限制,它充当笔记本。更现实地说,我希望用户在数千行中的某个地方有很多行,可以使用标签进行搜索。