Python Tkinter:什么更快:删除并绘制一个新的或Itemconfig?

Python Tkinter:什么更快:删除并绘制一个新的或Itemconfig?,python,canvas,tkinter,Python,Canvas,Tkinter,在Tkinter画布上,更新一段文本,Canvas.itemconfig(text,text='newtext')或删除文本并将新文本写入屏幕时,什么速度更快 删除文本并添加新文本: text = canvas.create_text(200, 200, text='old text') canvas.delete(text) text = canvas.create_text(200, 200, text='old text') 使用itemconfig text = canvas.crea

在Tkinter画布上,更新一段文本,
Canvas.itemconfig(text,text='newtext')
或删除文本并将新文本写入屏幕时,什么速度更快

删除文本并添加新文本:

text = canvas.create_text(200, 200, text='old text')
canvas.delete(text)
text = canvas.create_text(200, 200, text='old text')
使用
itemconfig

text = canvas.create_text(200, 200, text='old text')
canvas.itemconfig(text, text='new text')

至于哪个更快,其实没什么区别,毕竟我们说的是几秒钟。您可以说,
canvas.itemconfig
只是一行代码,而删除然后重新添加文本是两行和两个命令,因此
canvas.itemconfig
可能会使它更快或使代码更高效。所以除非您在canvas.itemconfig中遇到问题,否则我将暂时坚持使用它。

为一个项目加快速度是无关紧要的。画布在必须管理大量对象ID时存在性能问题1,即使这些ID是已删除项目的ID。每次删除和创建文本时,都会添加另一个id。如果反复删除和重新创建文本项,最终会导致性能问题

最好的解决方案是配置现有项的文本

1我无法引用这方面的参考资料。我环顾四周,找不到一篇明确的评论,但我在过去亲眼目睹了这个问题

“更快”是一个很容易衡量的东西。