Sublassing tuple works, subclassing list does not

Bruno Desthuilliers bruno.42.desthuilliers at websiteburo.invalid
Wed Mar 31 04:58:53 EDT 2010


lbolla a écrit :
> 
> class MyList(list):
> 	def __init__(self, names, values):
> 		list.__init__(self, values)
> 		for name, value in zip(names, values):
> 			setattr(self, name, value)
> 
> names = ['A', 'B', 'C']
> values = ['a', 'b', 'c']
> 
> lst = MyList(names, values)
> print lst
> print lst[0]
> print lst.B
> 

 >>> lst[0] = "foobar"
 >>> lst.A
'a'>>> lst.B = 42
 >>> lst[1]
'b'
 >>> lst.D="duh"
 >>> lst[3]
Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
IndexError: list index out of range




More information about the Python-list mailing list