Dou*_*ger 12 python datetime rounding
如何将日期时间舍入到前一个小时?例如:
print datetime.now().replace(microsecond=0)
>> 2017-01-11 13:26:12.0
Run Code Online (Sandbox Code Playgroud)
向下舍入到前一个小时: 2017-01-11 12:00:00.0
Wil*_*sem 36
由于要向下舍到小时,你可以简单地替换microsecond,seconds并且minutes所有零:
print(datetime.now().replace(microsecond=0,second=0,minute=0))
Run Code Online (Sandbox Code Playgroud)
如果你想向下舍到先前的小时(如示例说明2017-01-11 13:26:12.0来2017-01-11 12:00:00.0)更换了microseconds,seconds并minutes用0,然后从它减一小时:
from datetime import datetime, timedelta
print(datetime.now().replace(microsecond=0,second=0,minute=0)-timedelta(hours=1))
Run Code Online (Sandbox Code Playgroud)
shell中的示例:
$ python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from datetime import datetime, timedelta
>>> print(datetime.now().replace(microsecond=0,second=0,minute=0)-timedelta(hours=1))
2017-01-11 16:00:00
Run Code Online (Sandbox Code Playgroud)
from datetime import datetime, timedelta
n = datetime.now() - timedelta(hours=1)
new_date = datetime(year=n.year, month=n.month, day=n.day, hour=n.hour)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17044 次 |
| 最近记录: |