Martin Häcker wrote:

Hi there,

I just tried to run this code and failed miserably - though I dunno why. Could any of you please enlighten me why this doesn't work?

Thanks a bunch.

--- snip ---
import unittest
from datetime import datetime

class time (datetime):
  def __init__(self, hours=0, minutes=0, seconds=0, microseconds=0):
    print "blah"
    datetime.__init__(self, 1, 1, 1, hours, \
    minutes, seconds, microseconds)


class Test (unittest.TestCase): def testSmoke(self): # print time() # bombs, and complains that # the time ctor needs at least 3 arguments self.assertEquals(datetime(1,1,1,1,2,3,4),time(1,2,3,4))


if __name__ == '__main__': unittest.main() --- snap ---

The reason I want to do this is that I want to work with times but I want to do arithmetic with them. Therefore I cannot use the provided time directly.

Now I thought, just overide the ctor of datetime so that year, month and day are static and everything should work as far as I need it.

That is, it could work - though I seem to be unable to overide the ctor. :(

Why is that?

Perhpas the error message or output, which you don't provide, would avoid our having to use our psychic powers? ;-)

In other words: what's wrong? How do you *know* you can't override it?

regards
 Steve
--
Steve Holden               http://www.holdenweb.com/
Python Web Programming  http://pydish.holdenweb.com/
Holden Web LLC      +1 703 861 4237  +1 800 494 3119
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to