#!/usr/local/bin/python2 import collections class q(collections.MutableSequence): def __init__(self, *items): self._items = list(items) self._compiled_items = list(items) def __getitem__(self, index): return self._items[index] def __setitem__(self, index, value): self._items[index] = value self._compiled_items[index] = value def __delitem__(self, index): del self._items[index] del self._compiled_items[index] def __len__(self): return len(self._items) def insert(self, index, value): self._items.insert(index, value) self._compiled_items.insert(index, value) l = q(1,2,3) del l[1] print l._compiled_items[1]