首页 > 解决方案 > 如何使用 Python 在 JSON 文件中将日期四舍五入到最接近的小时?

问题描述

我想在 JSON 文件中将时间四舍五入到最接近的小时,该文件包含一组具有不同时间戳的推文。例子:

{    
    "created_at": "Tue Sep 30 01:24:46 +0000 2018",

在这里,我想将时间四舍五入到 01:00:00。任何人都可以帮助一个可以在 python 中做到这一点的脚本吗?我尝试使用它,但由于每条推文的时间戳都会发生变化,我无法做到这一点。

            line = re.sub('^{"created_at": "Tue Sep 30 01:24:46', '^{"created_at": "Tue Sep 30 01:24:46,', line)

任何帮助表示赞赏!谢谢!

标签: pythonjson

解决方案


>>> timestamp = "Tue Sep 30 01:24:46 +0000 2018"

>>> from datetime import datetime

>>> original = datetime.strptime(timestamp, '%a %b %d %H:%M:%S %z %Y')
>>> original
datetime.datetime(2018, 9, 30, 1, 24, 46, tzinfo=datetime.timezone.utc)

>>> modified = original.replace(minute=0, second=0)
>>> modified
datetime.datetime(2018, 9, 30, 1, 0, tzinfo=datetime.timezone.utc)

>>> modified.isoformat()
'2018-09-30T01:00:00+00:00'

推荐阅读