知识点:turtle常用函数绘图
turtle(海龟绘图)是Python内置的标准库,提供了一种直观的绘图方式:通过控制屏幕上的小海龟移动来绘制图形。它特别适合初学者学习编程逻辑和几何概念。
一、核心概念与画布设置
| |
|---|
| 画布 | |
turtle.Pen() | |
turtle.done() | |
turtle.bgcolor("white") | |
二、常用绘图函数
1. 移动与绘制
| | |
|---|
forward(d) | | t.forward(100) |
backward(d) | | t.backward(50) |
circle(r) | | t.circle(80) |
circle(r, extent) | | t.circle(100, 360/n) |
goto(x, y) | | t.goto(0, 0) |
2. 方向控制
| | |
|---|
left(angle) | | t.left(90) |
right(angle) | | t.right(45) |
setheading(angle) | | t.setheading(0) |
3. 画笔属性设置
| | |
|---|
pensize(width) | | t.pensize(20) |
pencolor(color) | | t.pencolor("red") |
speed(speed) | | t.speed(1) |
4. 笔的状态控制
| | |
|---|
penup() | | t.penup() |
pendown() | | t.pendown() |
hideturtle() | | t.hideturtle() |
showturtle() | | t.showturtle() |
三、绘图代码示例
import turtle as mypenfor x in [80,40,20,10,5]: mypen.circle(x) #绘制半径为x的圆 mypen.forward(x) #向前移动x像素,让圆错开mypen.done()
②画弧线粗细不一的圆
import turtle as t n=8for i in range(8): if i%2==0: # 偶数索引(0,2,4,6) t.pensize(20) # 粗画笔 else: # 奇数索引(1,3,5,7) t.pensize(2) # 细画笔 t.circle(100, 360/n) # 绘制圆弧(每次画45度)t.done()
③画正多边形
import turtlen = int(input('请输入正多边形的边数n:')) # 用户输入边数a = int(input('请输入边长a:')) # 用户输入边长d = (n-2)*180 / n # 计算正多边形的内角度数t = turtle.Pen()for i in range(n): t.speed(1) # 设置最慢速度,便于观察 t.forward(a) # 绘制一条边 t.left(180-d) # 左转外角角度(外角=180-内角)turtle.done()
④画多彩圆
import turtlet = turtle.Pen()turtle.bgcolor("white") # 设置白色背景colors = ["red","green","blue","yellow"] # 颜色列表for x in range(100): t.pencolor(colors[x%4]) # 循环使用4种颜色 t.circle(x) # 半径逐渐增大 t.left(91) # 每次旋转91度,形成螺旋效果
pencolor() - 动态改变画笔颜色
colors[x%4] - 利用取模运算循环切换颜色
circle(x) - 半径随循环变量x增大,圆越来越大
left(91) - 每次旋转91度(不是90度),形成错位螺旋效果
循环100次,绘制100个圆,形成绚丽图案
四、总结:turtle绘图的特点
turtle绘图的核心思想:通过控制海龟的移动距离、转向角度、画笔属性,结合循环结构和数学规律,创造出各种几何图形和艺术图案。