Seite 1 von 1

datetime funktion

Verfasst: Donnerstag 25. August 2005, 13:14
von Daveron
Hi,

ist es möglich bei der datetime funktion now() die mircoseconds wegzulassen? meine datetimeeinträge haben standardmässig microseconds auf 0...

Verfasst: Donnerstag 25. August 2005, 13:28
von jens
Sind das nicht Nachkommastellen? Die sind dann nach einem int() oder round() weg...

Verfasst: Donnerstag 25. August 2005, 15:34
von Daveron
ne das funktioniert nicht, da round eine float brauch und ich eine datetime nicht mit int() konvertieren kann.

Verfasst: Donnerstag 25. August 2005, 16:14
von henning
Ich bin nicht sicher, ob ich verstanden habe, was du eigentlich genau haben willst, ich gehe einfach mal davon aus, du willst ein datetime.datetime-Objekt, welches datetime.dateime.now() entspricht mit dem Unterschied, dass die microseconds aus 0 gesetzt sind?

Das würde ich erstmal so machen:

Code: Alles auswählen

% python
Python 2.3.5 (#2, Jun 19 2005, 13:28:00) 
[GCC 3.3.6 (Debian 1:3.3.6-6)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import datetime
>>> n = datetime.datetime.now()
>>> print n.microsecond
234185
>>> d = datetime.datetime(n.year, n.month, n.day, n.hour, n.minute, n.second)
>>> print d.microsecond
0
>>> 

Verfasst: Donnerstag 25. August 2005, 23:21
von BlackJack
Die `datetime` Objekte haben eine `replace()` Methode:

Code: Alles auswählen

In [70]: datetime.datetime.now()
Out[70]: datetime.datetime(2005, 8, 26, 0, 23, 28, 936525)

In [71]: datetime.datetime.now().replace(microsecond=0)
Out[71]: datetime.datetime(2005, 8, 26, 0, 23, 32)

Verfasst: Freitag 26. August 2005, 06:59
von gerold
BlackJack hat geschrieben:Die `datetime` Objekte haben eine `replace()`
Hi BlackJack!

Das klingt ja toll :) und ich habe mich immer so, wie es henning beschrieben hat, abgeplagt. :?

lg
Gerold
:-)

Verfasst: Freitag 26. August 2005, 11:46
von henning
Ah super, hab ich auch mal wieder was dazugelernt :-)
Was mich interessieren würde:
Wird dabei ein neues datetime-Objekt erzeugt oder das alte veändert?
Sind datetime-Objekte überhaupt mutabel?

Verfasst: Freitag 26. August 2005, 23:31
von BlackJack
henning hat geschrieben:Wird dabei ein neues datetime-Objekt erzeugt oder das alte veändert?
Man bekommt ein neues Objekt:

Code: Alles auswählen

In [16]: dt = datetime.datetime.now()

In [17]: id(dt)
Out[17]: 1073848168

In [18]: id(dt.replace(microsecond=0))
Out[18]: 1073848216