请使用turtle库和递归函数设计一个图形绘制作品(使用递归函数)
时间: 2024-08-02 20:00:19 浏览: 70
在Python中,`turtle`库是一个用于创建图形和动画的模块,非常适合用来演示递归功能。递归函数是函数调用自身的过程,这里我们可以创建一个简单的递归函数来绘制类似Sierpinski三角形或斐波那契螺旋的图案。下面是一个基本的Sierpinski三角形的例子:
```python
import turtle
def draw_sierpinski(size, depth):
if depth > 0: # 基本情况:当深度为0时停止画
turtle.forward(size)
turtle.right(60)
draw_sierpinski(size/2, depth-1) # 递归调用,缩小规模并减小深度
turtle.left(120) # 向右转
draw_sierpinski(size/2, depth-1) # 另一条边
turtle.right(60)
draw_sierpinski(size/2, depth-1) # 最后一条边
# 设置初始参数
turtle.speed(0) # 快速画图
size = 150
depth = 5 # 深度决定了复杂度
turtle.penup()
turtle.goto(-size/2, size/2) # 移动到绘图起点
turtle.pendown()
# 开始绘制
draw_sierpinski(size, depth)
# 结束并隐藏turtle
turtle.done()
```
阅读全文