class Dictionary: def __init__(self): self.keys = [] self.vals = [] def setVal(self, key, val): if key in self.keys: loc = (self.keys).index(key) self.vals[loc] = val else: self.keys.append(key) self.vals.append(val) def size(self): return len(self.keys) def __getitem__(self, key): if key in self.keys: loc = self.keys.index(key) return self.vals[loc] else: return None def remove(self, key): if key in self.keys: loc = self.keys.index(key) self.vals.pop(loc) self.keys.pop(loc) return else: return def __add__(self, other): new_dict = Dictionary() # Add keys from self for i in range(len(self.keys)): key = self.keys[i] value = self.vals[i] new_dict.setVal(key, value) # Add keys from other if they are not in self for i in range(len(other.keys)): key = other.keys[i] value = other.vals[i] if key not in self.keys: new_dict.setVal(key, value) return new_dict def __str__(self): result = '' for i in range(len(self.keys)): result += (str(self.keys[i]) + ':' + str(self.vals[i]) + ', ') if result == '': return '{}' else: return '{' + result[:-2] + '}'