Hi, I'm Djd

I'm learning Linux and Termux and i like Photography

雨过天晴

Hi, I'm Djd

I'm learning Linux and Termux and i like Photography

提升Anki学习效率:自制卡牌的高级技巧

1 minutes
December 29, 2023

随着Anki在语言学习中的广泛应用,自制卡牌成为提高学习效率的关键。在本文中,我们将介绍两种高级技巧,分别适用于英文和中文文章。

1. 用Python脚本插入@符号并挖空英文单词

在英文学习中,有效地记忆单词是至关重要的。为了提高Anki卡牌的质量,我们可以使用Python脚本自动插入@符号,并结合正则表达式挖空单词。

# Python脚本示例
import csv
import re
import random

def insert_at_sign_randomly(input_csv, output_csv):
    with open(input_csv, 'r', encoding='utf-8') as input_file:
        with open(output_csv, 'w', encoding='utf-8', newline='') as output_file:
            reader = csv.reader(input_file)
            writer = csv.writer(output_file)

            for row in reader:
                new_row = []
                for cell in row:
                    # 判断是否为英文单词
                    if re.search(r'[a-zA-Z]', cell):
                        words = re.findall(r'\w+|[^\w\s]+', cell)
                        modified_words = []
                        for word in words:
                            if re.search(r'[a-zA-Z]', word) and len(word) >1:
                                # 在单词中的随机位置插入"@"
                                word_list = list(word)
                                at_sign_position = random.randint(1, len(word_list) - 1 )
                                word_list[at_sign_position:at_sign_position] = '@'
                                word = ''.join(word_list)
                            modified_words.append(word)
                        cell = ''.join(modified_words)
                    new_row.append(cell)
                writer.writerow(new_row)

# 替换'input.csv'和'output.csv'为你的输入和输出文件的路径
insert_at_sign_randomly('./english/unit-all.csv', './english/out/unit-all.csv')

2. 在电脑端用红色字体标注中文重点

对于中文文章,强调重点内容能够提高记忆深度。在电脑端,我们可以使用红色字体标注重点,并通过正则表达式挖空。

通过结合这两种技巧,我们可以在Anki中创建更具效果的卡牌,提高学习效率。记得定期复习,享受学习的过程!