python: 得到指定时间间隔之前的时间和之后的时间
一,代码:
以3分钟为例:分别得到3分钟后的时间和3分钟之前的时间
import datetime
import time
# 获取当前时间
now = datetime.datetime.now()
# 打印当前时间
print(now)
# 获取当前时间的年、月、日、时、分、秒
year = now.year
month = now.month
day = now.day
hour = now.hour
minute = now.minute
second = now.second
print(f"当前时间:年: {year}, 月: {month}, 日: {day}, 时: {hour}, 分: {minute}, 秒: {second}")
# 获取3分钟后时间
delta = datetime.timedelta(minutes=3)
after_time=now+delta
# 获取3分钟后时间的年、月、日、时、分、秒
year = after_time.year
month = after_time.month
day = after_time.day
hour = after_time.hour
minute = after_time.minute
second = after_time.second
print(f"3分钟后: 年: {year}, 月: {month}, 日: {day}, 时: {hour}, 分: {minute}, 秒: {second}")
# 获取3分钟前时间
delta = datetime.timedelta(minutes=3)
before_time=now-delta
# 获取3分钟前时间的年、月、日、时、分、秒
year = before_time.year
month = before_time.month
day = before_time.day
hour = before_time.hour
minute = before_time.minute
second = before_time.second
print(f"3分钟前: 年: {year}, 月: {month}, 日: {day}, 时: {hour}, 分: {minute}, 秒: {second}")
二,运行结果:
# python3 crontab.py
2024-11-05 16:16:22.210657
当前时间:年: 2024, 月: 11, 日: 5, 时: 16, 分: 16, 秒: 22
3分钟后: 年: 2024, 月: 11, 日: 5, 时: 16, 分: 19, 秒: 22
3分钟前: 年: 2024, 月: 11, 日: 5, 时: 16, 分: 13, 秒: 22
三,格式化为补0的时间格式
year = now.strftime('%Y') # 年份,格式化为4位数
month = now.strftime('%m') # 月份,格式化为2位数
day = now.strftime('%d') # 日期,格式化为2位数
hour = now.strftime('%H') # 小时,格式化为2位数
minute = now.strftime('%M') # 分钟,格式化为2位数
second = now.strftime('%S') # 秒数,格式化为2位数