1 问题
如何用python画一个圣诞树。
2 方法
利用递归策略和randow函数,先定义一个函数,然后分别画出樱花的主干和分支,最后返回函数。
import random
import turtle
def draw_tree(branch,t):
if branch>2:
if branch>=8 and branch<=10:
t.color('red')
t.pensize(branch/2)
elif branch<8:
t.color("pink")
t.pensize(branch)
elif branch>10 and branch<=20:
t.color("#8a7081")
t.pensize(branch/5)
else:
t.color('sienna')
t.pensize(branch/10)
t.forward(branch)#先画主干
a = 1.6*random.random()
b = 1.6 * random.random()
t.left(20*a)#再画左支
draw_tree(branch-10*b,t)#画左支
t.right(40*a)
draw_tree(branch-10*b,t)#右枝
t.left(20*a)
t.up()
t.backward(branch)
t.down()
else:
return
w = turtle.Screen()
t = turtle.Turtle()
t.up()
t.left(90)
t.backward(200)
t.down()
t.speed(0)
t.hideturtle()
draw_tree(60,t)
print("draw_finish")
w.exitonclick()
3 结语
针对使用python画出樱花树这一问题,通过上列代码证明是可行的,本文画出的樱花树较为简略,可以通过再建立一个花瓣函数,让樱花树更加生动。