Я создал программу python, которая создает вектор. Теперь я хочу установить элемент с помощью функции __setitem__
и __getitem__
. Так, например, если vector = Vec()
и vector[3] = 26
изменили бы пустой вектор на [0, 0, 0, 26]
. Мне нужно переопределить __getitem__
и __setitem__
. Я перечислил приведенный ниже код, но у меня возникли проблемы с функциями get и set. Любые советы?
class Vec:
def __init__(self, length = 0):
self.vector = [0]*length
def __str__(self):
return '[{}]'.format(', '.join(str(i) for i in self.vector))
#This formats the output according to the homework.
#Adds '[' and ']' and commas between each 0
def __len__(self):
return len(self.vector)
def extend(self, newLen):
self.vector.append([0]*newLen)
return (', '.join(str(j) for j in self.vector))
def __setitem__(self, key, item):
self.vector[key] = item
def __getitem__(self, key):
return self.vector[key]