当前位置:首页>python>学了忘忘了学,用Python写个Anki卡片生成器,记忆效果翻倍

学了忘忘了学,用Python写个Anki卡片生成器,记忆效果翻倍

  • 2026-10-11 07:11:10
学了忘忘了学,用Python写个Anki卡片生成器,记忆效果翻倍

我手机里存了三百多张截图,全是刷到的好内容。从初代R1到现在的各种笔记App,学了忘、忘了学的循环从来没断过。

最难受的是,我知道该用Anki。那些回忆算法确实管用。可每次要手动做一张卡片,从笔记里摘重点,再复制粘贴,格式还得调。坚持了三天,卡片数量不到一百张,人就累了。

后来我想通了。既然天天写Python,为什么不写个脚本,让代码帮我生成Anki卡片?

我决定从最简单的开始。只要给Python一个文本文件,它就能生成可以直接导入Anki的卡片包。

Anki的卡片格式其实挺直白。它要的是一个csv文件,每行是一张卡片,用逗号隔开问题和答案。再给个列名文件,告诉Anki第一列是问题,第二列是答案。

我写了个函数,读入我的笔记文本。笔记每一行是一句话,我规定用两个星号括起来的部分作为问题,剩下的做答案。比如:

Python的列表推导式 可以这样写: [x2 for x in range(10)]

代码把文本拆开,写成两列。十几行代码就搞定。

import re 

import csv

def make_cards(text):

   lines = text.strip().split('\n')

   cards = []

   for line in lines:

       match = re.match(r'\\(.+?)\\(.)', line)

       if match:

           question = match.group(1)

           answer = match.group(2).strip()

           cards.append([question, answer])

   return cards

我把这个脚本跑起来,贴进去一篇之前收藏的读书笔记。二十多句话,不到一秒就生成了二十二张卡片。我把csv文件导入Anki,直接开始复习。

那种感觉很奇怪。之前做一张卡片要一分钟,现在几百张卡片也就是几秒的事。记忆这件事,终于从“体力活”变成了“脑力活”。

后来我发现,光有脚本还不够。得让脚本好用,得有个界面。我用Python的Tkinter写了个弹窗,复制笔记进去,点生成,卡片文件就躺在桌面上。

最让我意外的是,这个简单的工具,让我的学习习惯变了。以前看到好内容,收藏起来就算了。现在多了一个步骤,整理成“加粗问题+解释”的格式。这个整理的过程,本身就是在加深理解。

朋友圈有人问我,你写这个花了多久?我说前后不到两小时。两小时换来了以后每次复习都能省下的时间。

你有没有那种感觉?学的东西太多,记住的太少?其实不是记忆力差,是复习的方式太原始了。

让Python帮你做卡片,把力气花在真正该花的地方。学习内容,然后让代码帮你记住。

代码放在Github上,不到五十行。如果你也学过Python,改改就能用。如果没学过,用它启动你的第一个练手项目也挺好。

记住一个道理:工具的价值,不是帮你做所有事。而是把重复的事做掉,让你能集中精神做重要的事。学了忘,忘了学,中间缺的只是一个生成卡片的脚本。

最新文章

随机文章