AI学习第五天-python的基础使用-趣味图形

一、Turtle 基础命令速查表

命令 功能 示例
forward(distance) 向前移动指定距离 turtle.forward(100)
backward(distance) 向后移动指定距离 turtle.backward(50)
left(angle) 左转指定角度 turtle.left(90)
right(angle) 右转指定角度 turtle.right(45)
goto(x, y) 移动到坐标 (x,y) turtle.goto(0, 0)
circle(radius) 绘制半径为 radius 的圆 turtle.circle(30)
penup() 抬起画笔(不绘制) turtle.penup()
pendown() 放下画笔(开始绘制) turtle.pendown()
pensize(size) 设置画笔粗细 turtle.pensize(3)
pencolor(color) 设置画笔颜色 turtle.pencolor("red")
fillcolor(color) 设置填充颜色 turtle.fillcolor("blue")
begin_fill() 开始填充形状 turtle.begin_fill()
end_fill() 结束填充形状 turtle.end_fill()
speed(speed) 设置绘图速度(0-10) turtle.speed(5)
done() 保持窗口不关闭 turtle.done()

二、绘图流程模板

收起

python

复制代码
import turtle

# 初始化画布
turtle.setup(width=600, height=400)  # 设置画布大小
turtle.title("Turtle Demo")  # 设置窗口标题

# 创建海龟对象
t = turtle.Turtle()  # 也可以直接使用turtle函数

# 绘图代码
t.forward(100)
t.left(90)
t.forward(100)

# 保持窗口
turtle.done()

三、基础案例

案例 1:绘制正方形

收起

python

复制代码
import turtle

t = turtle.Turtle()
for _ in range(4):
    t.forward(100)
    t.left(90)
turtle.done()
案例 2:绘制圆形

收起

python

复制代码
import turtle

t = turtle.Turtle()
t.circle(50)  # 半径50
turtle.done()
案例 3:绘制三角形

注意:转动的角度是外角

收起

python

复制代码
import turtle

t = turtle.Turtle()
for _ in range(3):
    t.forward(120)
    t.left(120)
turtle.done()
案例 4:绘制螺旋线

收起

python

复制代码
import turtle

t = turtle.Turtle()
length = 10
angle = 89

for _ in range(50):
    t.forward(length)
    t.left(angle)
    length += 2  # 逐渐增加长度
turtle.done()

四、进阶案例

案例 5:绘制花朵

收起

python

复制代码
import turtle
import random

t = turtle.Turtle()
t.speed(0)
colors = ["red", "orange", "yellow", "green", "blue"]

for _ in range(36):
    t.color(random.choice(colors))
    t.circle(100)
    t.left(10)
turtle.done()
案例 6:绘制五角星

收起

python

复制代码
import turtle

t = turtle.Turtle()
t.color("red")
t.begin_fill()

for _ in range(5):
    t.forward(150)
    t.left(144)  # 内角计算:180 - 360/(2*5) = 144

t.end_fill()
turtle.done()

五、注意事项

  1. 坐标系:画布中心为 (0,0),向右为 x 轴正方向,向上为 y 轴正方向。
  2. 角度单位:默认以度数为单位(如左转 90 度)。
  3. 颜色设置:支持颜色名称(如 "red")或 RGB 值(如 (255, 0, 0))。
  4. 循环优化:复杂图形建议用循环减少重复代码。
相关推荐
m0_640309301 分钟前
mysql如何处理连接数过多导致响应慢_mysql连接数调优
jvm·数据库·python
weixin_458580123 分钟前
PHP怎么实现Toran Proxy代理_PHP依赖包缓存加速【技巧】
jvm·数据库·python
m0_377618235 分钟前
Python Selenium怎么定位元素_By.XPATH与By.CSS_SELECTOR操作DOM节点
jvm·数据库·python
2201_761040596 分钟前
Layui layer.tips提示框怎么设置方向和颜色
jvm·数据库·python
weixin_424999366 分钟前
C#怎么实现EF Core迁移 C#如何用Entity Framework Core进行数据库迁移和更新表结构【数据库】
jvm·数据库·python
路溪非溪6 分钟前
嵌入式wifi专家成长学习路线
学习
m0_743623928 分钟前
安装宝塔面板提示缺少必要的依赖包_批量安装系统库
jvm·数据库·python
qq_334563558 分钟前
SQL提升开发效率_使用CTE重构嵌套子查询逻辑
jvm·数据库·python
xunmaiai 88810 分钟前
揭秘OZON高性价比选品:如何甄别真正靠谱的合作公司?
大数据·人工智能·python
qq_6543669814 分钟前
CSS如何处理超长文本换行问题_结合word-wrap属性
jvm·数据库·python