почему в 1 случае все переменные не становятся нулями, а во втором наоборот. мы присваиваем некоторые значения, остальное должно быть 0
1 код:
class SparseArray:
def __init__(self):
self.arr = {}
def __setitem__(self, key, value):
self.arr[key] = value
def __getitem__(self, key):
return self.arr.get(key, 0)
2 код:
class SparseArray:
def __init__(self):
self.arr = {}
def __getitem__(self, key):
self.arr[key] = 0
return self.arr[key]
def __setitem__(self, key, value):
self.arr[key] = value