作者 | 写代码的明哥
来源 | Pyhton编程时光
马上就是圣诞节了,先提前祝大家圣诞快乐!
今天来给大家分享一波如何使用 Python 来画一颗圣诞节树,包含多种版本,从平民版到豪华版,像极了一个程度员从入门到高级秃头程序员的过程。
# 圣诞树 - 平民版
第一种比较简单,由最基本的图形(圆形和正方形)组合而成,有点 turtle 基础的人都能画。
代码如下
# 圣诞树 - 进阶版
上面的圣诞树,都是新手练习使用的,只能自娱自乐,不够真实,也不够高大上。
用线条重新设计,一笔一划来作图,慢工出细活嘛~
代码如下:
import turtle
import time# 定义圣诞树的绿叶函数
def tree(d, s):if d <= 0:returnturtle.forward(s)tree(d - 1, s * .8)turtle.right(120)tree(d - 3, s * .5)turtle.right(120)tree(d - 3, s * .5)turtle.right(120)turtle.backward(s)
n = 100
""" 设置绘图速度
'fastest' : 0
'fast' : 10
'normal' : 6
'slow' : 3
'slowest' : 1
"""
turtle.speed('fastest') # 设置速度turtle.left(90)
turtle.forward(3 * n)
turtle.color("orange", "yellow")
turtle.left(126)# turtle.begin_fill()
for i in range(5):turtle.forward(n / 5)turtle.right(144)turtle.forward(n / 5)turtle.left(72)turtle.end_fill()
turtle.right(126)
turtle.color("dark green")
turtle.backward(n * 4.8)# 执行函数
tree(15, n)
turtle.backward(n / 5)
time.sleep(60)
# 圣诞树 - 豪华版
在进阶版的基础上,再稍作修改:
白天变成黑夜
挂点苹果上去
漫天的雪花与圣诞更配噢
就非常好看啦,我的耳边已经开始响起 Jingle Bell 的旋律了哈哈
代码如下:
# 平安夜 - 平安果
文章发得比较早,毕竟明天才是圣诞节,今晚是平安夜,不来个红苹果说不过去~
代码如下:
import turtle
import timeturtle.setup(800, 800)
turtle.speed(5)
turtle.pensize(5)# 先画一个圆,并填充为红色
turtle.begin_fill()
turtle.color("red")
turtle.circle(radius=150)
turtle.end_fill()# 画苹果把儿
turtle.color("brown")
turtle.pu()
turtle.goto(-90, 200)
turtle.pd()
turtle.circle(180, 40)
turtle.pu()
turtle.seth(105)
turtle.goto(-20, 220)
turtle.pd()
turtle.circle(180, 50)
turtle.pd()# 画左边叶子
turtle.begin_fill()
turtle.color("green")
turtle.circle(180, 50)
turtle.seth(-30)
turtle.circle(180, 55)
turtle.end_fill()# 画右边叶子
turtle.begin_fill()
turtle.color("green")
turtle.seth(0)
turtle.circle(180, 50)
turtle.seth(-180)
turtle.circle(180, 50)
turtle.end_fill()
turtle.done()
time.sleep(10)
往
期
回
顾
资讯
活体人脑细胞5分钟学会打游戏
资讯
谷歌发布RLDS,在强化学习生成
资讯
AI语言模型是否越大越好?
技术
从深度学习到深度森林方法
分享
点收藏
点点赞
点在看