你好请问有多个时间如:2023-02-13 120304、2023-04-05 070803 2023-05-01 030403判断最近的时间并打印2023-05-01是最近的呀用if判断怎么写?
可以先将这些时间转化为时间戳,然后比较大小。示例代码如下:
import time
time_list = ['2023-02-13 12:03:04', '2023-04-05 07:08:03', '2023-05-01 03:04:03']
# 将时间转化为时间戳
timestamp_list = [time.mktime(time.strptime(t, '%Y-%m-%d %H:%M:%S')) for t in time_list]
# 找到最小的时间戳
min_timestamp = min(timestamp_list)
# 将最小的时间戳转化为时间格式并打印
min_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(min_timestamp))
print(min_time)
输出结果为:2023-05-01 03:04:03
如果非要用if语句判断,可以这样写:
import time
time_list = ['2023-02-13 12:03:04', '2023-04-05 07:08:03', '2023-05-01 03:04:03']
min_time = None
for t in time_list:
timestamp = time.mktime(time.strptime(t, '%Y-%m-%d %H:%M:%S'))
if min_time is None or timestamp < min_timestamp:
min_time = t
print(min_time)
输出结果也为:2023-05-01 03:04:0
原文地址: https://www.cveoy.top/t/topic/dWP4 著作权归作者所有。请勿转载和采集!