如何使用 DateTime 模块在 python 中获取第一秒和最后一秒,这意味着 00:00:01 和 23:59:59。
我想得到今天之前的六个 DateTime。
所以,例如:
今天是12/10,我想得到
12/9 00:00:01 和 23:59:59
...
12/4 00:00:01 和 23:59:59
非常感谢。
最佳答案
只需使用 datetime.time.min
和 datetime.time.max
:
>>> import datetime
>>> datetime.time.min
datetime.time(0, 0)
>>> datetime.time.max
datetime.time(23, 59, 59, 999999)
您可以 combine使用 datetime.date
实例获取完整的 datetime.datetime
实例:
>>> datetime.datetime.combine(datetime.date.today(), datetime.time.max)
datetime.datetime(2012, 12, 1, 23, 59, 59, 999999)
要重新使用现有的 datetime.datetime
实例,请将 .combine()
方法与 .date()
方法一起使用在 datetime.datetime
实例上创建一个新的 datetime.datetime
实例:
>>> datetime.datetime.combine(datetime.datetime.now().date(), datetime.time.min)
datetime.datetime(2012, 12, 1, 0, 0)
要获取系列 日期,请使用datetime.timedelta
实例来创建偏移量。相对于今天的一系列日期就很容易了:
today = datetime.date.today()
lastweek = today - datetime.timedelta(days=7)
for i in range(7):
aday = lastweek + datetime.timedelta(days=i)
first = datetime.datetime.combine(aday, datetime.time.min)
last = datetime.datetime.combine(aday, datetime.time.max)
print first, last
关于python - 如何在python中使用datetime模块获取第一秒和最后一秒?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13661641/