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() 填充颜色

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

相关推荐
爬山算法1 天前
Hibernate(32)什么是Hibernate的Criteria查询?
java·python·hibernate
醇氧1 天前
Ping 127.0.0.1 具有 32 字节的数据:一般故障。【二】
运维·服务器·开发语言
码农水水1 天前
中国邮政Java面试:热点Key的探测和本地缓存方案
java·开发语言·windows·缓存·面试·职场和发展·kafka
CCPC不拿奖不改名1 天前
python基础:python语言中的控制结构+面试习题
开发语言·python·学习
MM_MS1 天前
Halcon基础知识点及其算子用法
开发语言·人工智能·python·算法·计算机视觉·视觉检测
a程序小傲1 天前
小红书Java面试被问:TCC事务的悬挂、空回滚问题解决方案
java·开发语言·人工智能·后端·python·面试·职场和发展
知行合一。。。1 天前
Python--03--函数入门
android·数据库·python
朝九晚五ฺ1 天前
从零到实战:鲲鹏平台 HPC 技术栈与并行计算
java·开发语言
CUIYD_19891 天前
Freemarker 无法转译 & 字符
java·开发语言·spring
superman超哥1 天前
Rust Vec的内存布局与扩容策略:动态数组的高效实现
开发语言·后端·rust·动态数组·内存布局·rust vec·扩容策略