在 Python 中将小时数添加到当前时间
Add hours to the current time in Python
在 Python 中将小时添加到当前时间:
- 使用
datetime.now()
方法获取当前本地日期和时间。 timedelta
通过将小时数传递给timedelta
班级来创建一个对象。- 将当前时间和
timedelta
对象相加。
主程序
from datetime import datetime, timedelta now = datetime.now() print(now) # 👉️ 2022-06-22 17:51:46.577659 result = now + timedelta(hours=3) print(result) # 👉️ 2022-06-22 20:51:46.577659 print(result.time()) # 👉️ 20:51:46.577659 print(f'{result:%H:%M:%S}') # 👉️ 20:51:46
确保从模块中导入 timedeltadatetime
类
。datetime
我们使用
datetime.now
方法获取当前本地日期和时间。
该
now
变量存储一个datetime
对象,我们可以使用timedelta
该类向其添加小时数。该类timedelta
可以作为参数传递days
、weeks
、hours
、minutes
、
seconds
和。milliseconds
microseconds
所有参数都是可选的,默认为0
.
最好只在调用timedelta
类时使用关键字参数,因为参数的顺序可能会造成混淆。
hours
我们只为示例中的参数提供了一个值。
我们需要使用一个
datetime
对象,因为它会在必要时自动滚动日、月和年。如果我们只有时间组件,这是不可能的。例如,
11:55:30 PM
+2
小时会引发异常。
如果只需要提取操作后的时间,调用对象time()
上的方法即可datetime
。
主程序
from datetime import datetime, timedelta now = datetime.now() print(now) # 👉️ 2022-06-22 17:56:07.569125 result = now + timedelta(hours=5) print(result) # 👉️ 2022-06-22 22:56:07.569125 # ✅ only get updated time print(result.time()) # 👉️ 22:56:07.569125
datetime.time
方法返回一个具有相同小时、分钟、秒和毫秒的时间对象。
如果您需要将时间格式化为HH:MM:SS
,请使用格式化字符串文字。
主程序
from datetime import datetime, timedelta now = datetime.now() print(now) # 👉️ 2022-06-22 18:02:28.398874 result = now + timedelta(hours=3) print(result) # 👉️ 2022-06-22 21:02:28.398874 print(result.time()) # 👉️ 21:02:28.398874 # 👇️ format as HH:MM:SS print(f'{result:%H:%M:%S}') # 👉️ 21:02:28
格式化字符串文字 (f-strings) 让我们通过在字符串前加上f
.
确保将表达式括在大括号 –{expression}
中。
格式化字符串文字还使我们能够
在表达式块中使用格式规范迷你语言。