📅  最后修改于: 2023-12-03 15:04:41.148000             🧑  作者: Mango
在实际的开发工作中,Python程序经常需要查找当前时间和给定时间之间的差异,比如计算到某个事件还有多少个小时或分钟。那么,该怎样写Python程序查找当前时间和给定时间之间的差异呢?
首先,我们需要导入Python的时间模块,方便我们操作时间。
import time
使用time模块中的time()函数获取当前时间戳,然后使用localtime()函数将时间戳转换成本地时间。最后,获取当前时间的年、月、日、小时、分钟、秒等信息。
# 获取当前时间
now = time.localtime()
year, month, day, hour, minute, second = now.tm_year, now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec
# 打印当前时间
print(f"当前时间:{year}年{month}月{day}日{hour}时{minute}分{second}秒")
该程序会输出当前时间的年、月、日、小时、分钟、秒等信息。
我们需要利用Python中的datetime模块来获取给定时间。其中,使用datetime.strptime()函数将字符串转换为datetime对象。
# 获取给定时间
given_time_str = "2021-09-14 12:00:00"
given_time = datetime.strptime(given_time_str, "%Y-%m-%d %H:%M:%S")
# 打印给定时间
print(f"给定时间:{given_time}")
该程序会输出给定时间。
获取当前时间和给定时间之间的时间差,通过datetime模块的datetime.now()函数获取当前时间,并计算时间差。
# 计算时间差
remaining_time = given_time - datetime.now()
# 打印时间差
print(f"距离给定时间还有{remaining_time}")
该程序会输出距离给定时间还有多少时间。
完整程序如下:
import time
from datetime import datetime
# 获取当前时间
now = time.localtime()
year, month, day, hour, minute, second = now.tm_year, now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec
# 打印当前时间
print(f"当前时间:{year}年{month}月{day}日{hour}时{minute}分{second}秒")
# 获取给定时间
given_time_str = "2021-09-14 12:00:00"
given_time = datetime.strptime(given_time_str, "%Y-%m-%d %H:%M:%S")
# 打印给定时间
print(f"给定时间:{given_time}")
# 计算时间差
remaining_time = given_time - datetime.now()
# 打印时间差
print(f"距离给定时间还有{remaining_time}")
该程序会输出当前时间、给定时间和距离给定时间还有多少时间。