如何转换日期时间。Datetime对象(例如,Datetime . Datetime .now()的返回值)到一个Datetime。Python中的date对象?


从文档中可以看到:

datetime.datetime.date () 返回具有相同年、月和日的日期对象。


使用date()方法:

datetime.datetime.now().date()

使用datetime.datetime.date()方法:

datetime.datetime.now().date()

显然,上面的表达式可以(恕我直言)写成:

datetime.date.today()

您可以使用datetime对象的date()方法将datetime对象转换为日期,如下所示:

<datetime_object>.date()

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()

您可以输入以下代码表单(今天日期&日期和时间名称): datetime.datetime.now()。strftime('%y-%m-%d %a %H:% m:%S')

“19-09-09太阳17:37:56”

然后输入以下代码(今天简单的日期): datetime.date.today () .strftime (y ' % - % - % d ') “19-09-10”

反对对象: datetime datetime。现在()date()。 datetime datetime。今天(日期)。() datetime datetime。utcnow () date()。 datetime datetime。今天(时代)。() datetime datetime。utcnow () date()。 datetime datetime。utcnow()时间()。


答案已更新到Python 3.7及更高版本

下面介绍如何转动日期和时间对象

(又名datetime。Datetime对象,即存储在模型中的对象。django模型字段

变成一个日期对象(又名datetime。约会对象):

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()

为了更清楚,如果你打印这些元素,这是输出:

print(datetime_element)

2020-07-10 12:56:54.324893


print(date_element)

2020-07-10


我使用data.strftime('%y-%m-%d')和lambda来将列转移到日期


Solved: AttributeError: 'Series' object has no attribute 'date'

你可以使用如下:

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

在上述代码中,日期同时包含日期和时间(2020-09-21 22:32:00),使用上述代码,我们只能得到日期为(2020-09-21)


如果你正在使用熊猫,那么这可以解决你的问题:

假设你在你的数据帧中有一个名为start_time的datetime64类型的变量,然后你可以像这样得到日期部分:

df.start_time.dt.date