Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python datetime计算时间窗口_Python_Datetime - Fatal编程技术网

使用Python datetime计算时间窗口

使用Python datetime计算时间窗口,python,datetime,Python,Datetime,我想查询数据库中某一天(例如今天00:00到23:59:59之间)发布的所有记录,并给出datetime.datetime时间戳,如datetime.datetime(2010,12,21,17,59,43,85335) 计算开始和结束datetime.datetime实例的最佳方法是什么?我想以这样的方式结束: >>> timestamp = datetime.datetime(2010, 12, 21, 17, 59, 43, 85335) >>> # d

我想查询数据库中某一天(例如今天00:00到23:59:59之间)发布的所有记录,并给出datetime.datetime时间戳,如datetime.datetime(2010,12,21,17,59,43,85335)

计算开始和结束datetime.datetime实例的最佳方法是什么?我想以这样的方式结束:

>>> timestamp = datetime.datetime(2010, 12, 21, 17, 59, 43, 85335)
>>> # do something with timestamp to get start_date and end_date 
>>> start_date
datetime.datetime(2010, 12, 21, 0, 0, 0, 0)
>>> end_date
datetime.datetime(2010, 12, 21, 23, 59, 59, 0)

谢谢,HC

如果只是计算一天,那么你所拥有的一切都很好。只需使用一天,然后将时间分别设置为0:00和23:59

如果你想得到一个月的开始和结束时间,那会变得复杂得多,因为每个月有不同的日子。对于类似的内容,您可以使用此模块


啊,找到了我想要的。我每次都在与时间作斗争

>>> timestamp = datetime.datetime.now()
>>> timestamp
datetime.datetime(2010, 12, 21, 18, 31, 37, 900795)
>>> timestamp.replace(hour=0, minute=0, second=0, microsecond=0)
datetime.datetime(2010, 12, 21, 0, 0)

timedelta听起来正是您需要的

从日期时间导入日期时间,日期

date.today()-timedelta(天=7)


将从今天起给您7天时间。

您的数据库是否提供将日期时间转换为日期的功能?然后您可以选择日期(列)=“2010-12-21”