中秋阴天看不见月亮只好用python写赏月工具
作者:顾木子吖 时间:2021-02-09 17:54:24
一年中秋至 又见圆月时
导语
假设农历八月十五,程序员错过了今年的中秋圆月。
▼
程序员的苦只有他们寄几知道
bug,bug,bug,bug,bug,bug……
吃饭时在改bug,走路时在改bug,约会时在改bug,结婚时在改bug
就连中秋佳节也还!在!改!bug!
▼
不过做为一枚上知《边城》下知编程的程序员,没有什么可以难倒他
“不就是中秋的圆月亮吗?”三分钟以后…程序员自己用Python画了一个
Python版中秋圆月!甚至可以的话,我每天都可以赏月过中秋~
环境安装:使用turtle绘制、游戏模块pygame模块照旧。
(1)首先绘制圆月。
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() 颜色填充
(2)然后绘制云层。
稍微有点儿复杂,因为云是飘动的,所以比月亮难一点。
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)
(3)绘制山川。
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()
(4)设置界面,进界面就有音乐播放。
def initTurtle():
pygame.mixer.init()
pygame.mixer.music.load('bgm.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)
(5)绘制诗句。
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)]
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])
效果图:
来源:https://blog.csdn.net/weixin_55822277/article/details/120179765
标签:python,赏月,中秋节
0
投稿
猜你喜欢
javascript实现圣旨卷轴展开效果(代码分享)
2024-04-10 11:03:29
Python中使用HTMLParser解析html实例
2023-01-17 11:47:16
如何解决python多种版本冲突问题
2023-12-28 06:41:17
Python神经网络TensorFlow基于CNN卷积识别手写数字
2022-06-18 20:23:00
Django中的Signal代码详解
2023-02-23 01:20:11
Python创建文件夹与文件的快捷方法
2022-08-31 19:50:49
使用python Django做网页
2023-11-22 03:35:26
WPF简单的数据库查询实例
2024-01-15 07:25:31
python中csv文件的若干读写方法小结
2021-04-07 11:46:03
js 原型对象和原型链理解
2024-04-23 09:20:23
python模拟菜刀反弹shell绕过限制【推荐】
2023-07-13 12:56:18
javascript自定义函数参数传递为字符串格式
2024-04-22 13:08:18
MySQL 复制表详解及实例代码
2024-01-22 22:49:16
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2023-07-18 20:11:01
vue2 利用echarts 单独绘制省份的步骤
2024-04-09 10:45:42
利用Python的pandas数据处理包将宽表变成窄表
2021-07-28 20:00:11
python类参数self使用示例
2023-05-27 17:15:18
Python中Django与Echarts的结合用法图文详解
2022-02-09 23:10:29
浅析Python字符串索引、切片、格式化
2023-09-26 07:57:20
数据库查询的分页优化技巧
2009-05-17 10:31:00