这几天在寻思着要背托福词汇,找了个方法想试一试,这个方法就是杨鹏单词记忆法,是一种根据艾宾浩斯遗忘曲线的规律来制定的学习方法,有兴趣的可以点击https://www.douban.com/note/222850799/或者百度了解一下,下面则简单说明要怎么来生成这个计划列表

根据这个记忆方法,每一个list都要当天背完后分别相隔一天,两天,四天,七天,十五天进行复习,所以要在之后能够及时复习,则需要一个时间表来记录每天要背到的list。然而这个时间安排表若用手工来制作,这会耗费很多精力和时间,而且还会容易出错,不过好在这个记法是有规律的,作为一只好吃懒做的程序猿,怎么可能像个机器一样去记录呢,肯定要交给机器做嘛(奸笑)

不过想出这个生成安排表算法也着实花费了不少精力,下面简单说一下算法的小原理

首先要生成所背词汇书的list,以及所需要花费的天数,这个其实可以写成程序算,但是为了偷懒,还是自己口算,反正也没有多少天。

第二步是根据每个日期建立一个列表,然后进行list添加,这里添加list的规律是根据记忆法来的,这里我用的是后推法,即用后面的日期去推之前积累到该天的list,在最后一个list之前(例如第96个list)和之后的判断都有所不同

鄙人不才,还是贴上代码吧

import datetime

b = []

prepare_list = locals()

for i in range(1,97,1):

a = "list_"+str(i)

b.append(a)

begin = datetime.date(2018,8,16)

end = datetime.date(2018,12,19)

a = []

for k in range((end-begin).days+1):

day = begin+datetime.timedelta(days = k)

a.append(str(day))

for j in range(0,125,1):

prepare_list[a[j]] = [a[j]]

if(j<96):

prepare_list[a[j]].append(b[j])

if((j-1)>=0):

prepare_list[a[j]].append(b[j-1])

if((j-3)>=0):

prepare_list[a[j]].append(b[j-3])

if((j-7)>=0):

prepare_list[a[j]].append(b[j-7])

if((j-14)>=0):

prepare_list[a[j]].append(b[j-14])

if((j-29)>=0):

prepare_list[a[j]].append(b[j-29])

if(j>=96):

if((j-1)<96):

prepare_list[a[j]].append(b[j-1])

if((j-3)<96):

prepare_list[a[j]].append(b[j-3])

if((j-7)<96):

prepare_list[a[j]].append(b[j-7])

if((j-14)<96):

prepare_list[a[j]].append(b[j-14])

if((j-29)<96):

prepare_list[a[j]].append(b[j-29])

print(prepare_list[a[j]])

python单词表-杨鹏记单词法安排表自动生成算法(Python实现)相关推荐

  1. python写一个记单词程序_杨鹏记单词法安排表自动生成算法(Python实现)

    这几天在寻思着要背托福词汇,找了个方法想试一试,这个方法就是杨鹏单词记忆法,是一种根据艾宾浩斯遗忘曲线的规律来制定的学习方法,有兴趣的可以点击https://www.douban.com/note/2 ...

  2. Python之Excel使用实现BOM表自动生成工具

    工具背景 由于工作过程的繁杂性,工作内容的复杂性.急需一个工具来自动的完成重复的工作.作为硬件工程师,应该都知道,每个作品完成后,在加工之前必须导出BOM表,然后整理出来可以上传到ERP或者符合公司的 ...

  3. mooc数据结构与算法python版第十一周作业_中国大学 MOOC_数据结构与算法Python版_2020最新答案学习指南...

    中国大学 MOOC_数据结构与算法Python版_2020最新答案学习指南 更多相关问题 [判断题]实际集成运放的上限截止频率为无穷大 [多选题]现代城市的发展凸现出与以往不同的动力机制包括 教师在引 ...

  4. mooc数据结构与算法python版期末测验_中国大学MOOC(慕课)_数据结构与算法Python版_测试题及答案...

    中国大学MOOC(慕课)_数据结构与算法Python版_测试题及答案 更多相关问题 采用fopen()函数打开文件,支持文件读取的参数有: [简答题]简单阐述高分子材料热-机械特征及成型加工的关系,并 ...

  5. python数据库开发 dga_使用深度学习检测DGA(域名生成算法)——LSTM的输入数据本质上还是词袋模型...

    from:http://www.freebuf.com/articles/network/139697.html DGA(域名生成算法)是一种利用随机字符来生成C&C域名,从而逃避域名黑名单检 ...

  6. python语言输入杨辉三角_?新手求教:请问怎样用python 显示杨辉三角,任意输入一个数N,输出一个N 1层的杨辉三角。...

    如何用python输出杨辉三角 iangles里用到了yield,yield 的作用就是把一个函数变成一个 generator 用python语言输出九九乘法表 杨辉三角 求代码 1.九九乘法表def ...

  7. python 按条件选择行和列数据_小白学数据结构-排序算法Python(冒泡、选择、快速、希尔等等)...

    排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 我们通常所说的排序算法往往指的是内部排序算法,即数据 ...

  8. python两个excel字段模糊匹配_Excel模糊查找中使用的算法 - python

    我正在匹配两个公司的公司名称.我试图用Levenstien的距离在Python中进行编码.我遇到公司简称以及诸如Pvt,Ltd之类的尾随问题.我已经使用Excel Fuzzy查找运行了相同的集合,并获 ...

  9. VS 2019 MFC CRC16校验算法例程总结(计算法/查表法以及CRC16校验表自动生成)

            工程需要,根据网上例程对CRC16校验方法进行了总结.CRC16为通讯领域常用的校验算法,其原理想必大家都很清楚.下面为相关的总结和封装类代码.被例程将CRC16校验的方法分为及算法和 ...

最新文章

  1. 线性代数:05 实对称矩阵与二次型
  2. Python 打包 exe 程序避坑指南:没有安装包也能运行小程序啦~开心
  3. python2和python3的主要区别
  4. Qt样例学习1(数字时钟)
  5. ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
  6. C#获取网上图片的宽高代码
  7. 使用Eclipse开发基于SSH三大框架的Web项目带图详解
  8. python async_python async
  9. 一个简单的python爬虫,以豆瓣妹子“http://www.dbmeizi.com/category/2?p= ”为例
  10. 将你的vim打造成轻巧强大的IDE
  11. 苹果手机白屏_苹果手机白屏怎么处理啊
  12. 电脑win7系统开机密码忘记
  13. PIC16F877A与Proteus仿真-2位7段数码管驱动
  14. 购物网站HTML(首页)
  15. 算法编程10:岛屿的最大面积
  16. vscode 源代码管理窗口显示空白
  17. Unity Gate Fit
  18. C# 里弹出“确定”“取消”对话框
  19. mysql中select使用方法,MySQL中select语句介绍及使用示例
  20. Android系统打不开,如何修复它:Android手机无法启动

热门文章

  1. [转帖]我的2006
  2. 做什么副业比较赚钱,这五个项目现在入行可能比上班挣得还多
  3. 梦幻古龙服务器 文档,梦幻古龙GM常用资料.doc
  4. 2023年2月系统集成项目管理工程师认证【报名入口】
  5. FBI教你读心术-1节
  6. 浮想——我和CSDN走过了3个时代(长文,无耐心读完者勿入)
  7. ExcelVBA 之Select Case
  8. 天地图JSAPI4.0切换地图事件
  9. 前后端分离情况下pdf文件在浏览器中预览的实现
  10. access无法 dolby_Windows10专业版无法安装dolby如何解决