gpt4 book ai didi

python - 如何在 python 中将时间 "now-5m"转换为 datetime 对象

转载 作者:行者123 更新时间:2023-12-05 08:40:21 26 4
gpt4 key购买 nike

我有一个场景,我可以使用以下任何格式获取日期时间。

1) 作为以下格式的字符串:1970-01-01T00:00:00

2)“现在 - 5 米”

3)“现在-1h”

或与分钟、第二天甚至一天的类似组合,我想得到一个比给定时间早 x 分钟的时间,最好的方法是什么?是否存在可以处理所有这些格式并以某种统一格式提供日期时间的库?

最佳答案

经过更多研究后,我发现有一个名为 dateparser 的模块提供了一个解析方法,使用解析方法我们可以将任何格式转换为 datetime.datetime 对象,然后我们可以按照 prosti 的建议使用 relativedelta 方法进行减法。

示例代码

import dateparser
from dateutil.relativedelta import relativedelta

print(dateparser.parse("now"))
print(dateparser.parse("now-30s"))
print(dateparser.parse("now-5m"))
print(dateparser.parse("1970-01-01T00:00:00"))
print(dateparser.parse("1970/01/01T00:00:00"))
print(type(dateparser.parse("1970/01/01T00:00:00")))
dt = dateparser.parse("now-5m")
print(dt - relativedelta(minutes=10)) # equals to now -15 min

输出::

2019-05-06 12:55:54.074220

2019-05-06 12:55:24.076534

2019-05-06 12:50:54.077823

1970-01-01 00:00:00

1970-01-01 00:00:00

2019-05-06 12:40:54.087881

您可以在::https://pypi.org/project/dateparser/ 阅读更多内容

关于python - 如何在 python 中将时间 "now-5m"转换为 datetime 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56003547/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com