(self, index, value)
Set the value at position i to value.

        You can only do slice assignment to values if you supply a sequence of
        equal length to the slice you are replacing.
Set the value at position i to value.
Set the value at position i to value .
def __setitem__(self, index, value):
        """
        Set the value at position i to value.

        You can only do slice assignment to values if you supply a sequence of
        equal length to the slice you are replacing.
        """
        if isinstance(index, types.SliceType):
            keys = self._main._sequence[index]
            if len(keys) != len(value):
                raise ValueError('attempt to assign sequence of size %s '
                    'to slice of size %s' % (len(name), len(keys)))
            # FIXME: efficiency?  Would be better to calculate the indexes
            #   directly from the slice object
            # NOTE: the new keys can collide with existing keys (or even
            #   contain duplicates) - these will overwrite
            for key, val in zip(keys, value):
                self._main[key] = val
        else:
            self._main[self._main._sequence[index]] = value
def __setitem__ ( self , index , value ) : if isinstance ( index , types . SliceType ) : keys = self . _main . _sequence [ index ] if len ( keys ) != len ( value ) : raise ValueError ( 'attempt to assign sequence of size %s ' 'to slice of size %s' % ( len ( name ) , len ( keys ) ) ) # FIXME: efficiency?  Would be better to calculate the indexes #   directly from the slice object # NOTE: the new keys can collide with existing keys (or even #   contain duplicates) - these will overwrite for key , val in zip ( keys , value ) : self . _main [ key ] = val else : self . _main [ self . _main . _sequence [ index ] ] = value