python系统之综合案例:用python打造智能诗词生成助手

不为失败找理由,只为成功找方法。所有的不甘,因为还心存梦想,所以在你放弃之前,好好拼一把,只怕心老,不怕路长。

python系列之综合案例

python系列前期章节

  1. python系列之注释与变量
  2. python系列之输入输出语句与数据类型
  3. python系列之运算符
  4. python系列之控制流程语句
  5. python系列之字符串
  6. python系列之列表
  7. python系列之元组
  8. python系列之字典
  9. python系列之集合
  10. python系列之函数基础
  11. python系列之函数进阶

前言

本章是python系列的第12章,前面几章已经学习了很多的python基础知识点,比如最开始的变量、注释、运算符到控制语句、数据类型,然后函数等。每一章有都有实践案例,目的是以应用为驱动,由浅入深的学习。本章暂时不进行新的知识讲解,而要温故而知新,做一个小项目。那么废话不多说,直接开干~

一、项目描述

在诗词的世界里,每一首诗都承载着诗人独特的情感与意境。今天,我们就用Python打造一个别具一格的诗词生成助手,深入体验Python基础语法和高阶特性的魅力。项目名称为 智能诗词生成助手

二、项目需求

我们要创建一个诗词生成助手,它能根据用户输入的季节和情感,生成与之匹配的简单诗词,帮助用户快速获取创作灵感。

三、 项目实现

1、开发准备

本项目在Python 3.7+环境下开发,代码使用PyCharm编辑器编写。你可根据实际需求,调整代码运行环境。

2、代码实现

python 复制代码
#导入random模块,用于生成随机数,在选择诗词元素时增加随机性
import random

#创建一个函数,让它根据输入的季节和情感,生成相应的诗词
def generate_poem(season, emotion):
    # 定义一些描述季节的词汇
    season_words = {
        "春天": ["嫩绿", "花香", "鸟鸣"],
        "夏天": ["烈日", "蝉鸣", "荷香"],
        "秋天": ["金黄", "落叶", "雁归"],
        "冬天": ["白雪", "寒风", "梅香"]
    }

    # 定义一些描述情感的词汇
    emotion_words = {
        "喜悦": ["欢快", "愉悦", "欣喜"],
        "悲伤": ["忧愁", "哀伤", "痛苦"],
        "平静": ["安宁", "静谧", "平和"]
    }

    # 使用高阶函数choice从季节和情感词汇中随机选择一个
    s_word = random.choice(season_words[season])
    e_word = random.choice(emotion_words[emotion])

    # 根据季节和情感组合生成诗词
    poem = f"{season}的{ s_word},透着{ e_word}的气息。"
    return poem

#获取用户输入的季节
while True:
    season = input("请输入季节(春天、夏天、秋天、冬天):")
    if season in ["春天", "夏天", "秋天", "冬天"]:
        break
    print("输入错误,请重新输入!")

#获取用户输入的情感
while True:
    emotion = input("请输入情感(喜悦、悲伤、平静):")
    if emotion in ["喜悦", "悲伤", "平静"]:
        break
    print("输入错误,请重新输入!")

#调用generate_poem函数生成诗词
result = generate_poem(season, emotion)
print("生成的诗词:", result)
 

参考运行结果:

四、代码解读

1、变量与数据类型

在上述代码中, season_words 和 emotion_words 是字典类型的变量,分别用于存储描述季节和情感的词汇。 season 、 emotion 和 result 则是字符串类型变量,用于存储用户输入和生成的诗词。

2、运算符

这里虽没有复杂的数学运算,但赋值运算符 = 用于将值赋给变量,保证程序的顺利运行。

3、输入输出语句

input() 函数用于获取用户输入的季节和情感。 print() 函数负责输出提示信息和生成的诗词。

4、控制流程语句

while 循环用于验证用户输入是否正确。只有当用户输入正确的季节和情感时,循环才会结束,确保程序的健壮性。

5、函数

generate_poem() 是一个自定义函数,接受季节和情感作为参数,返回生成的诗词。它将复杂的诗词生成逻辑封装起来,提高了代码的可读性和可维护性。

6、高阶函数

random.choice() 属于高阶函数,它从序列中随机选择一个元素,在生成诗词时为诗词元素的选择增加了随机性。

五、总结

通过这个诗词生成助手项目,我们不仅巩固了Python的基础语法,还体验了高阶函数在实际项目中的应用。你可以发挥想象力,进一步优化这个项目,如增加更多的诗词元素、改进诗词的结构,使其生成更优美、更有韵味的诗词。希望大家能从这个项目中感受到Python的魅力,开启更多有趣的编程之旅!

本人学识浅薄,文章中有不足之处,还请各方道友在评论区留言,谢谢。

相关推荐
DBA小马哥17 小时前
时序数据库是什么?能源行业国产化替换的入门必看
数据库·时序数据库
dev派17 小时前
AI Agent 系统中的常用 Workflow 模式(2) Evaluator-Optimizer模式
python·langchain
前端付豪19 小时前
AI 数学辅导老师项目构想和初始化
前端·后端·python
用户03321266636719 小时前
将 PDF 文档转换为图片【Python 教程】
python
爱可生开源社区19 小时前
某马来西亚游戏公司如何从 SQL Server 迁移至 OceanBase?
数据库
悟空爬虫21 小时前
UV实战教程,我啥要从Anaconda切换到uv来管理包?
python
dev派21 小时前
AI Agent 系统中的常用 Workflow 模式(1)
python·langchain
小瓦码J码21 小时前
PostgreSQL表名超长踩坑记
数据库·postgresql
yhyyht21 小时前
InfluxDB入门记录(三)flux-dsl
数据库·后端
明月_清风1 天前
从“能用”到“专业”:构建生产级装饰器与三层逻辑拆解
后端·python