1003 Stimmen

Wie konvertiere ich eine Zeitangabe in ein Datum?

Wie konvertiere ich eine datetime.datetime Objekt (z. B. der Rückgabewert von datetime.datetime.now()) a un datetime.date Objekt in Python?

39 Stimmen

Wenn Sie dies nur brauchen für datetime.datetime.now() Bitte beachten Sie, dass es eine Methode gibt datetime.date.today() .

0 Stimmen

Wenn Sie bereits datetime importiert haben, z. B. from datetime import datetime können Sie einfach ein Datum hinzufügen from datetime import datetime, date

11voto

Tms91 Punkte 2444

Antwort aktualisiert auf Python 3.7 und mehr

So können Sie ein Datums- und Zeitobjekt drehen

(alias datetime.datetime Objekt, das innerhalb von models.DateTimeField django model feld )

in ein Datumsobjekt (auch bekannt als datetime.date Objekt):

from datetime import datetime

#your date-and-time object
# let's supposed it is defined as
datetime_element = datetime(2020, 7, 10, 12, 56, 54, 324893)

# where
# datetime_element = datetime(year, month, day, hour, minute, second, milliseconds)

# WHAT YOU WANT: your date-only object
date_element = datetime_element.date()

Und nur um das klarzustellen, wenn Sie diese Elemente ausdrucken, ist hier die Ausgabe:

print(datetime_element)

2020-07-10 12:56:54.324893

print(date_element)

2020-07-10

6voto

Serenity Punkte 32491
import time
import datetime

# use mktime to step by one day
# end - the last day, numdays - count of days to step back
def gen_dates_list(end, numdays):
  start = end - datetime.timedelta(days=numdays+1)
  end   = int(time.mktime(end.timetuple()))
  start = int(time.mktime(start.timetuple()))
  # 86400 s = 1 day
  return xrange(start, end, 86400)

# if you need reverse the list of dates
for dt in reversed(gen_dates_list(datetime.datetime.today(), 100)):
    print datetime.datetime.fromtimestamp(dt).date()

3 Stimmen

Wollten Sie diese Antwort hier veröffentlichen? Für mich sieht es so aus, als ob Ihre Antwort auf eine andere Frage gerichtet ist.

1voto

Manjula Devi Punkte 121
Solved: AttributeError: 'Series' object has no attribute 'date'

Sie können wie unten beschrieben vorgehen,

df["date"] = pd.to_datetime(df["date"]).dt.date

im obigen Code enthält date sowohl Datum als auch Uhrzeit (2020-09-21 22:32:00), mit dem obigen Code können wir nur das Datum erhalten (2020-09-21)

0voto

Wei Chun Chang Punkte 17

Ich benutze data.strftime('%y-%m-%d') mit lambda, um die Spalte in das Datum zu übertragen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X