I want to write a Vector class and it makes the most sense to just subclass list. I also want to be able to instantiate a vector using either:
Vector( 1, 2, 3 ) OR Vector( [1, 2, 3] ) so I have this: class Vector(list): def __new__( cls, *a ): try: print a return list.__new__(cls, a) except: print 'broken' return list.__new__(cls, list(a)) doing Vector( 1, 2, 3 ) on this class results in a TypeError - which doesn't seem to get caught by the try block (ie "broken" never gets printed, and it never tries to I can do pretty much the exact same code but inheriting from tuple instead of list and it works fine. is this a python bug? or am I doing something wrong? thanks, -h. -- http://mail.python.org/mailman/listinfo/python-list