Python turtle库绘制螺旋正方形与彩色图形详解

沈知远
沈知远
发布时间:2026-10-15| 4人浏览过
原创

本文详细介绍Python中turtle库的基础用法,包括如何安装该库、理解画布坐标系以及掌握画笔控制和图形绘制方法。通过蓝色螺旋正方形和彩色螺旋正方形的具体代码示例,展示如何利用循环和颜色设置绘制出直观的动态图形,适合Python初学者快速入门图形编程。

使用Python的turtle库来绘制螺旋正方形

1. 螺旋正方形实现

import turtle  #导入turtle库
turtle.pensize(2) #设置画笔的宽度(2)
for i in range(100):  #循环(画)100次
   turtle.fd(i + (i * 2)) #每次循环画笔长度i+(i*2)
   #(不能覆盖掉i-1的正方形的意思?)
   turtle.left(90) #左转90°
turtle.hideturtle() #隐藏画笔
turtle.done()   #停留画面

运行结果展示:

2. 彩色螺旋正方形实现

import turtle #导入turtle库
turtle.pensize(2)  #设置画笔的宽度(2)
turtle.bgcolor("black") #背景颜色(黑色)
colors = ["blue","yellow","red","pink"] #定义颜色(4中颜色)
for i in range(120):        #循环(画)120次
    turtle.pencolor(colors[i % 4]) #画笔颜色
    turtle.fd(i+(i*2))   #每次循环画线长度i+(i*2)
    turtle.left(90)    #左转90°
turtle.hideturtle()   #隐藏画笔
turtle.done()    #停留画面

运行结果展示:

第三方库turtle的应用场景

turtle库是Python中用于绘制图形的内置函数库。其名称意为“海龟”,绘图过程可形象地描述为一只海龟在画布上爬行所留下的轨迹,从而形成图形,这种机制使得绘图过程非常直观易懂。

1. 通过pip安装turtle库

打开命令行工具(cmd),输入以下命令进行安装:

pip install turtle

2. 理解绘图坐标系

在turtle画布中,默认原点位于画布中心,坐标为(0,0)。X轴左侧代表后退方向,右侧代表前进方向;Y轴上方代表左方,下方代表右方。

使用turtle.setup(width, height, top, left)函数可设置绘图窗口。参数width和height分别指定窗口的宽度和高度,若为整数则以像素为单位,若为小数则表示占屏幕的比例。参数top和left指定窗口左上角距离屏幕边界的距离,若设为None则窗口居中显示(通常无需设置这两个参数)。

3. turtle的画笔控制方法

turtle的画笔控制主要用于设置画笔状态,包括控制画笔的抬起与落下、设定画笔宽度及颜色等属性。

turtle的画笔控制方法
方法功能
turtle.pensize()/width设置画笔的宽度,若为空则返回当前画笔的宽度
turtle.pendown()/pd()/down()放下画笔,即结束图形绘制
turtle.penup()/pu()/up()提起画笔,用于移动画笔位置
turtle.pencolor(colorstring)/pencolor((r,g,b))设置画笔颜色,第一个为颜色字符串,例('blue');第二个为颜色值取值表示

4. turtle的图形绘制方法

该类方法涵盖画笔的前进、后退及方向控制等功能,用于实现具体的图形绘制逻辑。

turtle的图形控制方法
方法功能
turtle.seth(angle)/setheading(angle)改变画笔绘制方向,angle是绝对方向的绝对值
turtle.fd(distance)/forward(distance)控制画笔沿当前方向前进distance距离,distance的单位是像素,当值为负数时,表示向相反的的方向前进
turtle.circle(radius,extents)用来绘制一个弧形,根据半径radius绘制extens角度的弧形
turtle.left(angle)向左旋转angle角度
turtle.setx(x)将当前x轴移动到指定位置,x的单位是像素
turtle.sety(y)将当前轴y移动到指定位置,y的单位是像素
turtle.right(angle)向右旋转angle角度
turtle.shape("name")设置画笔的形状,例:将name设置成‘turtle’
turtle.speed(num)设置画笔的速度,num是一个整数
turtle.hideturtle()隐藏画笔

5. 简单应用示例

绘制蓝色螺旋正方形的代码实现

import turtle as tt
 
'''绘制蓝色正方形螺旋'''
tt.setup(400, 300)  # 设置窗口大小
tt.pensize(1)  # 设置画笔宽度
tt.pencolor('blue')  # 设置画笔颜色
tt.shape('turtle')  # 设置画笔形状
tt.speed(5)  # 设置画笔速度
a = 5    #设置画笔起始位置
for i in range(40):
    a += 5
    tt.left(90)
    tt.fd(a)
tt.hideturtle()    #隐藏画笔
tt.done()    #放下画笔,结束绘制

以上为个人经验分享,希望能为大家提供参考,也希望大家多多支持本站。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。