python 制作 艾宾浩斯记忆表

最近在背英语单词,背得我开始怀疑人生。想想应该有方法的记忆,搜索了一波后发现艾宾浩斯记忆法很适合,于是便开始傻乎乎的手工制作记忆表。

OK,花了半个小时手工做完第一张表后,接下来需要按行归纳。再归纳四五行后,发现这样下去不仅得花一两个小时,眼睛也承受不住啊,我这突然意识到我为什么不写代码让计算机给我做。。。我是不是sa。。。

import xlrd
import xlwt
import datetime

#读取表格
data =xlrd.open_workbook(r"/Users/lnl/Desktop/艾宾浩斯记忆.xls")
#取出第一张表
table = data.sheets()[0]
#得到表格的行列数及第1行值(我的表格第1行为列属性,第0行是表名)
rows=table.nrows
cols =table.ncols
row1 =table.row_values(1)

#创建表格
workbook =xlwt.Workbook(encoding ="utf-8",style_compression=0)
sheet =workbook.add_sheet("表格1",cell_overwrite_ok=True)
#制作列属性
sheet.write(0,1,'初次记忆')
sheet.write(0,2,'复习')
#制作行属性(时间)
for i in range(1,rows-1):
    #获取现在的日期+偏移日期->转化为(%m-%d)月-日字符串
    now_time = (datetime.datetime.now()+datetime.timedelta(days=i)).strftime('%m-%d')
    sheet.write(i,0,now_time)
#填写每个单元值:之前做好的表值为‘O’则将列属性填写入‘初次记忆列’,值为‘O’或‘√’填写入复习列
for i in range(2,rows):
    cell = ''
    for j in range(1,cols):
        if(table.cell_value(i,j)=='O'):
            sheet.write(i-1,1,'O '+row1[j])
        if(table.cell_value(i,j)=='O' or table.cell_value(i,j)=='√'):
            cell +='O '+row1[j]+'   '
        sheet.write(i-1,2,cell)


workbook.save(r"/Users/lnl/Desktop/艾宾浩斯记忆2.xls")

 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值