Python实现可存储历史随机词到CSV的随机词生成器方法
随机词生成器持久化存储实现方案
你不需要手动复制粘贴内容,也不用写复杂的循环逻辑,只用Python自带的标准库就能实现需求,不需要安装任何第三方包。
实现思路
每次程序启动后按固定流程执行即可:
- 检查存储历史记录的CSV文件是否存在,存在就读取所有已保存的历史词汇
- 沿用你已有的随机词生成逻辑生成新的词汇
- 把新生成的词汇追加到历史词汇列表中,再将完整列表覆盖写回CSV文件,下次启动时就能读取到之前所有的生成记录
完整可运行代码
import random import csv import os # 原有词库无需修改 word_list = ['dog', 'cat', 'tree', 'hungry', 'food', 'hamburger', 'desk', 'bag', 'rain', 'car'] # 指定历史记录保存的CSV文件名 history_file_path = "random_word_history.csv" # 读取已有的历史记录 all_generated_words = [] if os.path.exists(history_file_path): with open(history_file_path, 'r', encoding='utf-8') as f: csv_reader = csv.reader(f) for row in csv_reader: all_generated_words.extend(row) # 生成新的随机词,逻辑和你原有代码完全一致 new_rand_words = random.choices(word_list, k=3) print("本次生成结果:", new_rand_words) # 将新词合并到总历史列表 all_generated_words.extend(new_rand_words) # 将更新后的完整列表写入CSV with open(history_file_path, 'w', encoding='utf-8', newline='') as f: csv_writer = csv.writer(f) csv_writer.writerow(all_generated_words) print(f"记录已保存,当前累计生成词汇总数:{len(all_generated_words)}")
涉及的核心知识点(入门级即可掌握)
- 文件操作基础:用
open()函数操作本地文件,'r'代表读模式、'w'代表覆盖写模式,指定encoding='utf-8'可以避免乱码问题 with上下文语句:Python官方推荐的文件操作写法,会自动完成文件关闭操作,不需要手动调用close(),减少出错概率- 标准库
csv模块:专门用于处理CSV格式的读写,不需要手动拼接逗号分隔字符串,自动处理特殊字符转义问题 os.path.exists():用于判断目标文件是否存在,避免第一次运行时文件不存在触发读报错- 列表
extend()方法:用于把一个列表的所有元素追加到另一个列表末尾,正好匹配你合并历史词和新词的需求
效果说明
- 第一次运行程序时会自动创建CSV文件,存入首次生成的3个词
- 后续每次运行都会自动追加新生成的词,允许词汇重复,完全匹配你给出的示例格式
- 如果需要调整单次生成的词汇数量,直接修改
random.choices()的k参数值即可 - 直接用Excel、记事本或者文本编辑器都能打开生成的CSV文件查看所有历史记录
内容的提问来源于stack exchange,提问作者Kayla Jones
相关产品推荐
相关产品推荐

