__setitem__ реализация в Python для класса Point (x, y)

Я пытаюсь сделать класс Point в Python. У меня уже есть некоторые функции, такие как __str__ или __ getitem__, и они прекрасно работают. Единственная проблема, которую яЯ сталкиваюсь с тем, что моя реализация __setitem__ не работает, с другими все в порядке.

Вот мой класс Point, а последняя функция - мой __setitem__:

class point(object):
    def __init__(self,x=0,y=0):
        self.x=x
        self.y=y

    def __str__(self):
        return "point(%s,%s)"%(self.x,self.y)

    def __getitem__(self,item):
        return (self.x, self.y)[item]

    def __setitem__(self,x,y):
        [self.x, self.y][x]=y

это должно работать так:

p=point(2,3)
p[0]=1 #sets the x coordinate to 1
p[1]=10 #sets the y coordinate to 10

(Прав ли я, должен ли сетит работать так?) Спасибо!

Ответы на вопрос(7)

Ваш ответ на вопрос