• Python
  • Python 海龟绘图(turtle)学习笔记

  • @ 2025-7-21 21:38:21

Python 海龟绘图(turtle)学习笔记

一、模块介绍

turtle 是 Python 内置的绘图模块,能像“海龟爬行”一样绘制图形,轻松实现线条、几何图形绘制,开启编程绘图趣味之旅 。

二、基础使用步骤

1. 导入模块

import turtle  # 直接导入,后续用turtle.xxx调用功能
import turtle as t  # 给模块取别名t,简化书写,后续用t.xxx调用

2. 绘制图形

利用模块里的函数(如 forward 前进、circle 画圆等)指挥“海龟”绘图,最后用 turtle.done() 或别名 .done() 保持绘图窗口显示 。

三、核心功能与代码示例

1. 移动与转向

  • 前进(forward:让海龟沿当前方向前进指定像素。
    import turtle as t
    t.forward(100)  # 海龟前进100像素
    t.done()
    
  • 后退(backward:沿当前方向反方向后退指定像素。
    import turtle as t
    t.forward(100)
    t.backward(50)  # 后退50像素,回到前进50像素位置 
    t.done()
    
  • 左转(left右转(right:改变海龟朝向,参数是旋转角度(度数)。
    import turtle as t
    t.forward(100)
    t.left(90)  # 左转90度,改变前进方向
    t.forward(100)
    t.right(90)  # 右转90度,再变向
    t.done()
    

2. 绘制几何图形

  • 画圆(circlecircle(半径, 弧度) ,默认画完整圆(360度),指定弧度画部分圆弧。
    import turtle as t
    t.circle(50)  # 画半径50像素的圆
    t.circle(100, 180)  # 画半径100像素的180度圆弧 
    t.done()
    
  • 画正方形:通过重复“前进 + 转向”实现。
    import turtle as t
    for _ in range(4):  # 循环4次,画4条边
        t.forward(100)
        t.left(90)  # 每次左转90度,调整方向
    t.done()
    
  • 画等边三角形:同样靠“前进 + 转向”,三角形内角 60 度,转向 120 度(外角) 。
    import turtle as t
    for _ in range(3):
        t.forward(100)
        t.left(120)  # 左转120度,契合三角形转向需求
    t.done()
    

3. 外观设置

  • 画笔形状(shape:可设置为 turtle(乌龟)、arrow(箭头)、circle(圆形)等。
    import turtle as t
    t.shape("turtle")  # 把画笔形状设为乌龟样式
    t.forward(100)
    t.done()
    
  • 画笔颜色(color:参数填颜色名(如 redgreen)或 16 进制颜色值,改变绘制线条颜色。
    import turtle as t
    t.color("red")  # 画笔设为红色
    t.circle(100)
    t.done()
    
  • 画笔粗细(pensize:设置画笔线条的像素粗细。
    import turtle as t
    t.pensize(5)  # 画笔粗细设为5像素
    t.forward(100)
    t.done()
    
  • 绘图速度(speed:参数 0 - 10 ,0 最快,1 最慢,控制绘图过程的展示速度。
    import turtle as t
    t.speed(1)  # 设为最慢速度,便于看清绘图过程
    t.circle(100)
    t.done()
    

4. 循环绘制(以多彩同心圆为例)

用循环批量绘制,结合颜色列表实现多彩效果 。

import turtle as t #导入turtle模块 取名为t
t.shape("turtle")#设置画笔形状为乌龟
#t.speed(0) #设置画笔速度为最快
#for i in range(8)#循环范围是0到7 第一个参数是起始值默认为0
colorsName = ["red", "orange", "yellow", "green", "#a0c8f0", "purple", "pink"] #颜色名称列表]
for i in range(0,7):#循环范围是0到6 第二个参数是结束值 但是不包含结束值 包头不包尾
    t.circle(30*i)#画圆 半径为50*i 
    t.color(colorsName[i]) #设置画笔颜色为颜色名称列表中的第i个颜色
    #t.color()#设置画笔颜色
    #color的参数可以是颜色名称字符串 也可以是16进制颜色值
t.done()#结束绘图

四、总结

turtle 模块让编程绘图轻松又有趣,从基础移动转向,到几何图形绘制、外观定制,再到循环批量创作,大家已迈出创意绘图第一步!多尝试修改参数、组合功能,就能画出超酷作品,继续解锁更多绘图魔法吧 ,比如用它绘制复杂图案、动画,把编程创意变成可视化的美好画面~

0 条评论

目前还没有评论...