Python turtle库:用代码绘制创意图形

  1. 初识 turtle

turtle 是 Python 的标准库之一,通过控制一个"画笔"在画布上移动来绘制图形。你可以想象成在纸上画画,画笔可以前进、后退、转弯、改变颜色等。


2. 基础操作

导入库与设置画笔
python 复制代码
import turtle

# 创建画布和画笔
t = turtle.Turtle()
t.speed(0)  # 设置画笔速度(0 最快)
基础移动指令
  • t.forward(100):前进 100 像素
  • t.backward(50):后退 50 像素
  • t.left(90):向左转 90 度
  • t.right(45):向右转 45 度
画笔控制
  • t.penup():抬起画笔(移动时不画线)
  • t.pendown():落下画笔
  • t.pencolor("red"):设置画笔颜色
  • t.pensize(3):设置画笔粗细

3. 绘制简单图形

正方形
python 复制代码
for _ in range(4):
    t.forward(100)
    t.right(90)
等边三角形
python 复制代码
for _ in range(3):
    t.forward(100)
    t.left(120)
五角星
python 复制代码
for _ in range(5):
    t.forward(100)
    t.right(144)  # 内角为 36°,故转角为 180° - 36° = 144°

4. 进阶创作

彩色螺旋
python 复制代码
colors = ["red", "orange", "yellow", "green", "blue", "purple"]
for i in range(100):
    t.pencolor(colors[i % 6])
    t.forward(i)
    t.right(59)  # 调整角度可改变螺旋形状
花朵图案
python 复制代码
t.pensize(2)
for _ in range(24):
    t.circle(50)  # 画半径为 50 的圆
    t.right(15)   # 每次旋转 15°

5. 创意无限

  • 组合图形:将多个图形叠加(如圆 + 多边形)
  • 随机艺术 :用 random 库随机生成颜色、步长或角度
  • 分形树:递归绘制树枝结构(需设计递归逻辑)

6. 保存作品

python 复制代码
# 保存为 PNG 图片
canvas = turtle.getscreen()
canvas.getcanvas().postscript(file="art.eps")  # 先存为 EPS
# 可再用 Pillow 库转为 PNG

小贴士

  • turtle.done() 保持窗口不关闭
  • 调整 t.speed() 可观察绘制过程
  • 尝试 t.begin_fill()t.end_fill() 填充颜色

动手试试吧!用代码画出你的创意~ 🎨

相关推荐
TechWJ8 分钟前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha16 分钟前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy31 分钟前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法
lly20240632 分钟前
C++ 文件和流
开发语言
m0_7066532337 分钟前
分布式系统安全通信
开发语言·c++·算法
喵手1 小时前
Python爬虫实战:构建各地统计局数据发布板块的自动化索引爬虫(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集数据csv导出·采集各地统计局数据发布数据·统计局数据采集
寻寻觅觅☆1 小时前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++
lightqjx1 小时前
【C++】unordered系列的封装
开发语言·c++·stl·unordered系列
天天爱吃肉82182 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车
zh_xuan2 小时前
kotlin lazy委托异常时执行流程
开发语言·kotlin