

def update(self, *args, **kwargs):
    'update() extends rather than replaces existing key lists. Also accepts keyword args.'
    if (len(args) > 1):
        raise TypeError('update expected at most 1 arguments, got %d', len(args))
    if args:
        other_dict = args[0]
        if isinstance(other_dict, MultiValueDict):
            for (key, value_list) in other_dict.lists():
                self.setlistdefault(key, []).extend(value_list)
        else:
            try:
                for (key, value) in other_dict.items():
                    args.setlistdefault(key, []).append(value)
            except TypeError:
                raise ValueError('MultiValueDict.update() takes either a MultiValueDict or dictionary')
    for (key, value) in kwargs.items():
        self.setlistdefault(key, []).append(value)

dataset/ETHPy150Open kdart/pycopia/aid/pycopia/dictlib.py MultiValueDict.update/VarMisuse@119/190 `self`->`args`