Python中秋祝福小程序

一、效果图预览

二、源码分享

效果图所示代码如下,可以根据自己的想法来对程序进行修改,得到更好的效果。

import turtle
import time
import pygame


def drawMoon():  # 绘制月亮
    turtle.penup()  # 画笔拿起
    turtle.goto(-150, 0)
    turtle.fillcolor((255, 215, 0))  # 圆月的颜色
    turtle.pendown()  # 画笔放下
    turtle.begin_fill()
    turtle.circle(112)
    turtle.end_fill()  # turtle.begin_fill()	到turtle.end_fill() 颜色填充


def drawCloud():  # 绘制云朵
    turtle.penup()
    turtle.goto(-500, 200)
    turtle.fillcolor((245, 245, 245))
    turtle.pencolor((255, 255, 255))
    turtle.pensize(5)
    turtle.pendown()
    turtle.forward(250)

    def cloud(mode='right'):
        for i in range(90):
            turtle.pensize((i + 1) * 0.2 + 5)
            turtle.right(1) if mode == 'right' else turtle.left(1)
            turtle.forward(0.5)
        for i in range(90):
            turtle.pensize(90 * 0.2 + 5 - 0.2 * (i + 1))
            turtle.right(1) if mode == 'right' else turtle.left(1)
            turtle.forward(0.5)

    cloud()
    turtle.forward(100)
    cloud('left')
    turtle.forward(600)


def drawMountain():  # 绘制山川
    turtle.penup()
    turtle.goto(-500, -250)
    turtle.pensize(4)
    turtle.fillcolor((36, 36, 36))
    turtle.pencolor((31, 28, 24))
    turtle.pendown()
    turtle.begin_fill()
    turtle.left(20)
    turtle.forward(400)
    turtle.right(45)
    turtle.forward(200)
    turtle.left(60)
    turtle.forward(300)
    turtle.right(70)
    turtle.forward(300)
    turtle.goto(500, -300)
    turtle.goto(-500, -300)
    turtle.end_fill()


def initTurtle():
    pygame.mixer.init()
    # pygame.mixer.music.load('ZXbg.mp3')
    # pygame.mixer.music.play(-1, 20.0)
    turtle.hideturtle()
    turtle.setup(1000, 600)
    turtle.title('中秋快乐!!!')
    turtle.colormode(255)
    turtle.bgcolor((193, 210, 240))
    turtle.speed(10)


def writePoetry():
    turtle.penup()
    turtle.goto(400, -150)
    turtle.pencolor((250, 240, 230))
    # 诗句
    potery = ["\n明\n月\n几\n时\n有\n", "把\n酒\n问\n青\n天\n"]
    # 诗句位置(可自行设计添加), 最好2/4句五言诗
    # coordinates = [(300, -150), (200, -150), (100, -150)]
    coordinates = [(300, -150), (200, -150), (100, -150)]
    for i, p in enumerate(potery):
        turtle.write(p, align="center", font=("STXingkai", 50, "bold"))
        if (i + 1) != len(potery):
            time.sleep(2)
            turtle.goto(coordinates[i])


def main():
    initTurtle()
    drawMoon()  # 绘制月亮
    drawCloud()  # 绘制云朵
    drawMountain()  # 绘制山
    writePoetry()  # 写诗
    turtle.done()


if __name__ == '__main__':
    main()

代码不易,点个赞支持一下吧!!!

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值