心情不好的时候,用 Python 画棵樱花树送给自己吧

from turtle import *

from random import *

from math import *

def tree(n,l):

     pd()# 下笔

     # 阴影效果

     t = cos(radians(heading()+45))/8+0.25

     pencolor(t,t,t)

     pensize(n/3)

     forward(l)# 画树枝

     if n>0:

         b = random()*15+10 # 右分支偏转角度

         c = random()*15+10 # 左分支偏转角度

         d = l*(random()*0.25+0.7) # 下一个分支的长度

         # 右转一定角度 , 画右分支

         right(b)

         tree(n-1,d)

         # 左转一定角度,画左分支

         left(b+c)

         tree(n-1,d)

         # 转回来

         right(c)

     else:

         # 画叶子

         right(90)

         n=cos(radians(heading()-45))/4+0.5

         ran=random()

         # 这里相比于原来随机添加了填充的圆圈,让樱花叶子看起来更多一点

         if(ran>0.7):

             begin_fill()

             circle(3)

             fillcolor('pink')

         # 把原来随机生成的叶子换成了统一的粉色

         pencolor("pink")

         circle(3)

         if(ran>0.7):

             end_fill()

         left(90)

         # 添加 0.3 倍的飘落叶子

         if(random()>0.7):

             pu()

             # 飘落

             t = heading()

             an = -40 +random()*40

             setheading(an)

             dis = int(800*random()*0.5 + 400*random()*0.3 + 200*random()*0.2)

             forward(dis)

             setheading(t)

             # 画叶子

             pd()

             right(90)

             n =外汇跟单gendan5.com cos(radians(heading()-45))/4+0.5

             pencolor(n*0.5+0.5,0.4+n*0.4,0.4+n*0.4)

             circle(2)

             left(90)

             pu()

             # 返回

             t=heading()

             setheading(an)

             backward(dis)

             setheading(t)

     pu()

     backward(l)# 退回

bgcolor(0.956,0.9255,0.9882)# 设置背景色(把灰色换成淡紫色)

ht()# 隐藏 turtle

speed(0)# 速度 1-10 渐进, 0 最快

tracer(0,0)

pu()# 抬笔

backward(50)

left(90)# 左转 90

pu()# 抬笔

backward(300)# 后退 300

tree(12,100)# 递归 7

done()


请使用浏览器的分享功能分享到微信等