Tkinter Canvas 多边形对象问题

Tkinter Canvas polygon object issues

我看到了这个 post:

但是当我试图画一个正方形时:

from Tkinter import*

root = Tk()

class GUI(Canvas):
    '''inherits Canvas class (all Canvas methodes, attributes will be accessible)
       You can add your customized methods here.
    '''
    def __init__(self,master,*args,**kwargs):
        Canvas.__init__(self, master=master, *args, **kwargs)

polygon = GUI(root)
polygon.create_polygon([0, 0, 100, 100, 100, 0, 100], outline='gray', fill='gray', width=2)
polygon.pack()
root.mainloop()

我明白了:

expected even number: got 7

我已经尝试了所有我能想到的方法,但我无法让它工作!

create_polygon 方法需要偶数个参数时,为什么不提供偶数?

create_polygon 方法采用 [x0, y0, x1, y1, ...] 形式的参数,其中 (x0, y0), ... 是多边形的顶点。每个顶点有2个坐标,因此参数个数必须为偶数。

polygon.create_polygon([0, 0, 100, 0, 100, 100, 0, 100], outline='gray', fill='gray', width=2) 应该适用于顶点为 (0,0)(100,0)(100,100)(0,100).

的正方形