前言:最近开始复习考研英语了,每天做阅读记笔记,同时每天需要复习前几天的笔记,考虑到艾宾浩斯遗忘曲线这个东西,便写了一个小脚本来计算每一天记录的笔记需要复习的日期。
函数说明:函数review_time
的输入是记笔记的日期,输出就是需要复习这一天笔记的那些天的日期。
函数定义如下:
import datetime
def review_time(today):
delta_list = [1,1,2,2,3,4,5,5] # 每两天复习的间隔
review_day = []
new_day = datetime.datetime.strptime(today, '%m-%d')
for day in delta_list:
new_day = datetime.datetime.strptime(new_day.strftime('%m-%d'),'%m-%d') + datetime.timedelta(days=day)
review_day.append(new_day.strftime('%m.%d'))
print('today is ', today, 'review days are', review_day)
用法如下:
# 输入
review_time('08-28')
review_time('08-29')
review_time('08-30')
# 输出
today is 08-28 review days are ['08.29', '08.30', '09.01', '09.03', '09.06', '09.10', '09.15', '09.20']
today is 08-29 review days are ['08.30', '08.31', '09.02', '09.04', '09.07', '09.11', '09.16', '09.21']
today is 08-30 review days are ['08.31', '09.01', '09.03', '09.05', '09.08', '09.12', '09.17', '09.22']
用法解释:如果我在8.28那一天作了笔记,那么这一天的笔记需要在8.29, 8.30, 9.1, ... , 9.20日这几天进行复习,每天过一遍。
补充:复习日期之间间隔时间(天数)可以通过delta_list
来进行设定,我这里设定的是[1,1,2,2,3,4,5,5]
,大家可以自行安排其他间隔时间。
本篇笔记记录完毕,祝考研人都能上岸!