判断2018-08-11 20:30:00距离最近的星期一00:00:00相差多少分钟,用python编写
时间: 2024-10-01 10:13:21 浏览: 34
在Python中,我们可以使用datetime模块来计算两个日期之间的差值,然后转换为分钟数。首先,我们需要找到给定日期2018-08-11 20:30:00到最近的星期一00:00:00的时间差。这里是一个示例函数来完成这个任务:
```python
from datetime import datetime, timedelta
def minutes_to_next_monday(date_string):
# 将输入字符串转换为datetime对象
date_format = "%Y-%m-%d %H:%M:%S"
given_date = datetime.strptime(date_string, date_format)
# 计算到周一的距离,如果已经是周一,则跳过这一周
days_to_next_monday = ((given_date.weekday() + 7) % 7) # 周日为0,所以加7相当于一周
next_monday = given_date - timedelta(days=days_to_next_monday)
# 如果当前时间已经过了周一0点,再减去一天加上24小时
if given_date.hour > next_monday.hour or (given_date.hour == next_monday.hour and given_date.minute >= next_monday.minute):
next_monday -= timedelta(days=1)
# 返回分钟差距
return (next_monday - given_date).total_seconds() / 60
# 使用函数并打印结果
date_str = "2018-08-11 20:30:00"
minutes_diff = minutes_to_next_monday(date_str)
print(f"从{date_str}到最近的星期一相差了{minutes_diff:.0f}分钟.")
```
这个函数会计算出指定日期距离下一个星期一的总分钟数,并考虑到如果已经超过了周一0点的情况。
阅读全文