Serge Orlov wrote:
Max M wrote:

Yes, you did. datetime.timetuple is those who want *time module* format, you should use datetime.data, datetime.time, datetime.year and so on...

As they say, if the only tool you have is timetuple, everything looks like tuple 
<wink>
Try this:

dt = datetime(2005, 1, 1, 12, 0, 0)
dt.date()

datetime.date(2005, 1, 1)

This doesn't solve it. I don't think you understand my issue.

First of, it should be possible to easily convert between the datetime objects.

And eg. the date object doesn't have a datetime() method. Which it could easily have. Neither does time. They could have. But I don't think that is the way to solve it.



It is a problem if you make a subclass of datetime. Often you will ned to make datetime arithmetics with the new class.

Like: datetime_subclass_1 + datetime_subclass_2

The result of that is a plain datetime

In that case you will rather want your own subclass returned. But subclasses of datetime returns datetime objects. Not the subclass.

So to do an add of your own objects you must convert the output to your own class "manually"

class my_datetime(datetime):

    def __add__(self, other):
        result = datetime.__add__(self, other)
        return my_datetime(result.timetuple()[:6])

datetime(), time() etc. methods will not help with this.

--

hilsen/regards Max M, Denmark

http://www.mxm.dk/
IT's Mad Science
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to