「笔记」如何使用简易代码自动生成经典语录

作者 : 开心源码 本文共874个字,预计阅读时间需要3分钟 发布时间: 2022-05-14 共187人阅读

原文取自 How I generated inspirational quotes with less than 20 lines of python code
阿里云云栖社区翻译后为 如何用简易代码自动生成经典语录

鉴于二者都没有完整的代码,故结合 jieba 分词整合完整代码如下:

说明:原文代码的数据集是从文件中进行读取的,所以命名是 dataset_file. 本文为了运行和演示的方便,直接用的列表存储原始数据集,但命名上依然沿用原作者的命名方式。

import randomimport jiebadataset_file = ["我喜欢吃苹果。", "你吃橘子。"]print("\n分词前:", dataset_file)for i, each_sentence in enumerate(dataset_file):    dataset_file[i] = " ".join(jieba.cut(each_sentence))print("\n分词后:", dataset_file)model = {}for line in dataset_file:    line = line.lower().split()    for i, word in enumerate(line):        if i == len(line)-1:               model['END'] = model.get('END', []) + [word]        else:                if i == 0:                model['START'] = model.get('START', []) + [word]            model[word] = model.get(word, []) + [line[i+1]] print("\n模型:", model)generated = []while True:    if not generated:        words = model['START']    elif generated[-1] in model['END']:        break    else:        words = model[generated[-1]]    generated.append(random.choice(words))print("\n生成的一个结果:" + "".join(generated))

运行效果图

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 「笔记」如何使用简易代码自动生成经典语录

发表回复