有一个方法叫timetuple:
>>> from datetime import date
>>> today_date = date.today()
>>> today_date.timetuple()
time.struct_time(tm_year=2020, tm_mon=6, tm_mday=25, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=177, tm_isdst=-1)
如您所见,因为您使用的是date 而不是datetime,所以时间部分为零。
您可以将前三个项目转换为列表:
>>> list(today_date.timetuple()[:3])
[2020, 6, 25]
如果你使用datetime,那么它的使用方式相同,但时间部分也被填充:
>>> from datetime import datetime
>>> datetime.today().timetuple()
time.struct_time(tm_year=2020, tm_mon=6, tm_mday=25, tm_hour=19, tm_min=39, tm_sec=47, tm_wday=3, tm_yday=177, tm_isdst=-1)
所以你可以这样做,例如:
>>> list(datetime.today().timetuple()[:6])
[2020, 6, 25, 19, 40, 35]