A list with an access counter : super « Class « Python Tutorial






class CounterList(list):
  def __init__(self, *args):
      super(CounterList, self).__init__(*args)
      self.counter = 0
  def __getitem__(self, index):
      self.counter += 1
      return super(CounterList, self).__getitem__(index)
 
                
cl = CounterList(range(10))
print cl
cl.reverse()
print cl
del cl[3:6]
print cl
print cl.counter
print cl[4] + cl[2]
print cl.counter








11.30.super
11.30.1.alternative: the super function.
11.30.2.A list with an access counter
11.30.3.when using the keyword super, and that is why the super() built-in function was eventually added to Python, so you could "do the correct thing" functionally
11.30.4.Using super