蓝桥做真题详解:
顺子日期
import datetime start = datetime.date(2022, 1, 1) end = datetime.date(2022, 12, 31) m = ['012','123', '234', '345', '456', '567', '678', '789'] # 先将可以满足顺子日期的条件写出来,此处的日期为字符串 ans = 0 while start <= end: now_time = start.strftime("%Y%m%d") # 将遍历的日期转换为字符串,便于for循环 for x in m: if x in now_time: # 辨别该日期是否满足顺子日期 ans += 1 break # 例如 2012,3,4 该日期满足多个顺子日期的条件(012,123,234),但是该日期只算是一天,因此需要及时break终止 start += datetime.timedelta(days=1) print(ans)
星期一
import datetime start = datetime.date(1901, 1, 1) end = datetime.date(2023, 12, 28) ans = 0 while start <= end: # 使用while循环遍历 if start.weekday() == 0: # 如果遍历的当前日期为等于星期一则ans加一 ans += 1 start += datetime.timedelta(days=1) # 循环结束一次start日期加一天 print(ans)
datetime模块:
date日期类
time时间类
datetime日期时间类
timedelta类