在 Python 中向日期时间添加秒数

在 Python 中向日期时间添加秒数

Add seconds to datetime in Python

使用模块中的timedelta()datetime将秒数添加到日期时间,例如result = dt + timedelta(seconds=24)可以向timedelta该类传递seconds参数并将指定的秒数添加到日期时间。

主程序
from datetime import datetime, timedelta # ✅ add seconds to datetime dt = datetime(2023, 9, 24, 9, 30, 35) print(dt) # 👉️ 2023-09-24 09:30:35 result = dt + timedelta(seconds=24) print(result) # 👉️ 2023-09-24 09:30:59 # ------------------------------ # ✅ add seconds to current time now = datetime.today() print(now) # 👉️ 2022-06-22 11:56:16.347314 result_2 = now + timedelta(seconds=15) print(result_2) # 👉️ 2022-06-22 11:56:51.620548
如果您只有一个时间组件,例如09:30:13向下滚动到最后一个代码片段。

确保从模块中导入 timedeltadatetime

datetime

第一个示例使用
datetime
类创建一个
datetime对象。

我们传递了yearmonthdayhour
参数
minute的值。second

一旦我们有了一个datetime对象,我们就可以使用timedelta该类为其添加秒数。

主程序
from datetime import datetime, timedelta # ✅ add seconds to datetime dt = datetime(2023, 9, 24, 9, 30, 35) print(dt) # 👉️ 2023-09-24 09:30:35 result = dt + timedelta(seconds=24) print(result) # 👉️ 2023-09-24 09:30:59

第二个示例将秒数添加到当前时间。

主程序
from datetime import datetime, timedelta now = datetime.today() print(now) # 👉️ 2022-06-22 11:56:16.347314 result_2 = now + timedelta(seconds=15) print(result_2) # 👉️ 2022-06-22 11:56:51.620548

datetime.today()方法返回当前

本地日期时间。

我们需要使用一个datetime对象,因为它会在必要时自动滚动分钟、小时、天、月和年。

如果我们只有时间组件,这是不可能的。例如,
11:59:30PM+ 50seconds 会引发异常。

如果您只有时间组件,请使用该datetime.combine 方法将时间与当前(或其他某个)日期组合起来并获取一个对象。 datetime
主程序
from datetime import datetime, date, timedelta, time t = time(9, 30, 13) print(t) # 👉️ 09:30:13 result = datetime.combine(date.today(), t) + timedelta(seconds=27) print(result) # 👉️ 2022-06-22 09:30:40 only_t = result.time() print(only_t) # 👉️ 09:30:40

datetime.combine
方法将 a

date作为time参数,并datetime
通过组合它们返回一个新对象。

一旦我们得到一个datetime对象,我们就可以使用timedelta该类为其添加秒数。

如果您只需要在操作后提取时间,请使用对象time()上的方法。datetime

主程序
from datetime import datetime, date, timedelta, time t = time(9, 30, 13) print(t) # 👉️ 09:30:13 result = datetime.combine(date.today(), t) + timedelta(seconds=27) print(result) # 👉️ 2022-06-22 09:30:40 # ✅ only get updated time only_t = result.time() print(only_t) # 👉️ 09:30:40

datetime.time
方法返回一个具有相同小时、分钟、秒和毫秒的时间对象

发表评论