Python写诗如梦令·李清照

Python如梦令李清照


我给程序配了音乐为鱼舟晚唱,稍微修整了一下。

"""
   如梦令.py,请把以下重复的代码用for或者while循环重新实现
"""
import turtle
from winsound import PlaySound

poem = """如梦令
     李清照
常记溪亭日暮,
沉醉不知归路。
兴尽晚回舟,
误入藕花深处。
争渡,争渡,
惊起一滩鸥鹭。
"""
turtle.penup()
turtle.speed(1)
turtle.delay(50)
turtle.setup(800,586)         # 设置宽高
turtle.bgpic('lotus.png')     # 贴上背景

PlaySound('渔舟晚唱.wav',9)    # 重复异步播放音乐
ps = poem.split("\n")         # 以换行分隔
title = ps[0]                 # 诗的题目 
name = ps[1]                  # 诗的作者

turtle.goto(0,200)
turtle.write(title,align='center',font=('宋体',28,'bold'))

turtle.goto(0,150)
turtle.write(name,align='center',font=('黑体',18,'italic'))

ziti = ('楷体',20,'normal')

turtle.goto(0,50)
turtle.write(ps[2],align='center',font=ziti)

turtle.goto(0,0)
turtle.write(ps[3],align='center',font=ziti)

turtle.goto(0,-50)
turtle.write(ps[4],align='center',font=ziti)

turtle.goto(0,-100)
turtle.write(ps[5],align='center',font=ziti)

turtle.goto(0,-150)
turtle.write(ps[6],align='center',font=ziti)

turtle.goto(0,-200)
turtle.write(ps[7],align='center',font=ziti)

turtle.goto(0,-250)
turtle.write('更多李兴球Python创意程序请上www.lixingqiu.com')
turtle.done()

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
当然可以,我可以为您提供一个简单的诗词背诵系统的代码示例。以下是一个基于C++的控制台程序,可以随机生成一首唐诗或宋词,然后要求用户输入诗词的朗读内容,再与原文进行比对,最后给出得分。 ```c++ #include <iostream> #include <string> #include <vector> #include <ctime> using namespace std; // 唐诗和宋词的库 vector<string> tang_poems = { "床前明月光,疑是地上霜。", "白日依山尽,黄河入海流。", "静夜思", "登高", "望岳", // ... 这里可以加入更多的唐诗 }; vector<string> song_lyrics = { "苏幕遮·燎沉香", "声声慢·寻寻觅觅", "虞美人·听雨", "如梦令·常记溪亭日暮", "长恨歌·汉皇重色思倾国", // ... 这里可以加入更多的宋词 }; // 获取当前时间(毫秒级别) int get_current_time() { return static_cast<int>(time(nullptr)); } // 随机获取唐诗或宋词 string get_random_poem_or_lyric() { srand(get_current_time()); int rand_index = rand() % 2; // 0表示唐诗,1表示宋词 if (rand_index == 0) { return tang_poems[rand() % tang_poems.size()]; } else { return song_lyrics[rand() % song_lyrics.size()]; } } // 计算用户得分 int calculate_score(const string& original, const string& user_input) { int score = 0; for (size_t i = 0; i < original.size(); i++) { if (i >= user_input.size()) { break; } if (original[i] == user_input[i]) { score++; } } return score; } int main() { // 随机获取一首唐诗或宋词 string original = get_random_poem_or_lyric(); // 输出原文 cout << "请朗读下面的诗词:" << endl; cout << original << endl; // 等待用户输入 string user_input; getline(cin, user_input); // 计算用户得分 int score = calculate_score(original, user_input); cout << "你的得分是:" << score << endl; return 0; } ``` 在这个简单的代码示例中,我们使用了一个包含多个唐诗和宋词的库,然后随机获取其中一首,输出给用户进行朗读。接着,我们等待用户输入,然后计算用户的得分,并输出给用户。 这个代码示例只是一个基础版本,您可以根据自己的需求进行修改和扩展。例如,您可以加入更多的唐诗和宋词,或者设计一个更加复杂的算法来计算用户得分,或者将程序界面化并添加音频播放功能等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李兴球

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值