Python 使用tkinter,如何使一组坐标始终更新?

Python 使用tkinter,如何使一组坐标始终更新?,python,tkinter,Python,Tkinter,我想不断地在屏幕上绘制一组对象,它们的坐标由不断变化的数字列表决定。我正在使用JSON文件读取坐标。JSON文件如下所示,例如: {"coords_1": ["0", "0", "150", "120", "130", "180", "210", "160", "150", "30&quo

我想不断地在屏幕上绘制一组对象,它们的坐标由不断变化的数字列表决定。我正在使用JSON文件读取坐标。JSON文件如下所示,例如:

{"coords_1": ["0", "0", "150", "120", "130", "180", "210", "160", "150", "30", "100", "20"],
"coords_2": ["450", "0", "250", "120", "240", "180", "210", "200", "150", "150", "100", "20"]}
我的Python代码现在看起来像这样

import json
from tkinter import *

def read(number):
    with open("coords.json", "r") as f:
        data = f.read()
    json_object = json.loads(data)
    s = "coords_"
    s += str(number)
    return json_object[s]


root = Tk()
root.geometry('500x500')

canvas = Canvas(root, height = 500, width = 500)

#ALWAYS UPDATE THIS
object_1 = canvas.create_polygon(read(1), outline="blue", fill="orange", width=2)
object_2 = canvas.create_polygon(read(2), outline="blue", fill="green", width=2)

canvas.place(x=0,y=0)
root.mainloop()

这很好,但是,我希望能够更改JSON文件中的数据,从而更改对象的位置,但我不能。有人知道这是怎么可能的吗?

多亏了这篇文章,我才解决了这个问题


但是你每秒都在创建新的多边形。@acw1668是的,没有在代码中写入,但我使用的是
画布。删除
也不需要删除和重新创建,只需创建一次并更新坐标即可。
def repeat():
    object_1 = canvas.create_polygon(read(2), outline="blue", fill="orange", width=2)
    root.after(1000, repeat)

root.after(1000, repeat)