有趣的Python-turtle Python标准库 turtle 模块的使用及作品介绍

1 介绍

       turtle 是 Python 中用来绘图的标准库(Python解释器在安装后import直接使用),它简单且有趣,作为 Python初学者  都可以将它作为第一个学习对象,培养程序学习的兴趣,建立编程带来的成就感,这才是更好的坚持下去。


2 基本使用

1、创建画布

- 操作步骤

  1 导入turtle

  2 创建画布(设置画布宽高与窗口标题)

        turtle.setup(宽度, 高度)   - 设置画布的宽度和高度
        turtle.title(标题)    - 设置标题

  3 循环画布


- 代码实现

# 1 导入turtle
import turtle as tt
# 2 创建画布(设置画布宽高与窗口标题)
tt.setup(800, 600) # 设置窗口大小:800*600
tt.title("ITB业生") # 设置窗口标题
# 3 循环画布
tt.mainloop()

- 效果实现


2、设置画笔

- 操作步骤

  1 导入turtle

  2 创建画布(设置画布宽高与窗口标题)

  3 设置画笔(颜色、线宽、速度)

         turtle.pencolor(颜色)    - 设置画笔画出的线条的颜色
          turtle.width(线宽)         - 设置线条的线宽
          turtle.speed(速度值)     - 设置笔移动的速度(速度值是1-10逐渐变快;0 对应的速度最慢)

4 循环画布


- 代码实现

# 1 导入turtle
import turtle as tt
# 2 创建画布(设置画布宽高与窗口标题)
tt.setup(800, 600)
tt.title("ITB业生")
# 3 设置画笔(颜色、线宽、速度)
tt.pencolor('red') # 设置画笔的颜色:红色
tt.width(4) # 设置画笔的线宽:4
tt.speed(1) # 设置画笔移动速度:1
 
# 4 循环画布
tt.mainloop()

- 效果实现

- 说明:画笔默认的位于在 画布的中心【原点(0,0)】位置,反向默认是水平向右。


3、控制画笔移动

- 操作步骤

  1 导入turtle

  2 创建画布(设置画布宽高与窗口标题)

  3 设置画笔(颜色、线宽、速度)

  4 控制移动画笔(前进/后退、位置)

        turtle.forward(距离) / turtle.fd(距离)     - 控制笔前进指定距离
        turtle.back(距离)/turtle.bk(距离)           - 控制笔后退指定距离
        turtle.goto(x坐标, y坐标)/ turtle.setx(x坐标) / turtle.sety(y坐标)    - 控制笔移动到指定位置(坐标原点在画布的中心)
        turtle.home()                                        - 笔回到初始状态(回到初始位置和初始方向)

  5 循环画布


- 代码实现

# 1 导入turtle
import turtle as tt
# 2 创建画布(设置画布宽高与窗口标题)
tt.setup(800, 600)
tt.title("ITB业生")
# 3 设置画笔(颜色、线宽、速度)
tt.pencolor('red')
tt.width(4)
tt.speed(1)
# 4 移动画笔(前进/后退、位置)
tt.goto(-50, -50) # 移动(-50, -50)
tt.forward(150) # 前进150
tt.width(2) # 设置画笔线宽:2
tt.pencolor('green') # 设置画笔颜色为绿色
tt.goto(100, 100) # 移动(100, 100)
tt.back(100) # 前进100
tt.home() # 回到初始位置
# 5 循环画布
tt.mainloop()

- 效果实现

- 说明

   1、画笔的方向 默认水平向右,所以前进的时候笔是往右移动的,后退笔向左移动。

   2、在移动之前改变笔的方向,前进和后退的代码就会改变移动轨迹。


4、控制画笔方向

- 操作步骤

  1 导入turtle

  2 创建画布(设置画布宽高与窗口标题)

  3 设置画笔(颜色、线宽、速度)

  4 控制移动画笔(前进/后退、位置)

  5 控制画笔的方向(旋转)

        turtle.left(角度) - 向左旋转指定角度
        turtle.right(角度) - 向右旋转指定角度
        turtle.setheading(角度) - 设置绝对角度值指定度数

  6 循环画布


- 代码实现

# 1 导入turtle
import turtle as tt
# 2 创建画布(设置画布宽高与窗口标题)
tt.setup(800, 600)
tt.title("ITB业生")
# 3 设置画笔(颜色、线宽、速度)
tt.pencolor('red')
tt.width(4)
tt.speed(1)
# 4 移动画笔(前进/后退、位置)
tt.goto(0, 100) # 移动(100, 100)
# 5 控制画笔的方向(旋转)
tt.forward(120) # 前进120
tt.right(90) # 向右旋转90度
tt.pencolor('green') # 设置画笔的颜色:绿色
tt.forward(150) # 前进150
tt.left(90) # 向左旋转90度
tt.pencolor('blue') # 设置画笔的颜色:蓝色
tt.forward(120) # 前进120
tt.right(90) # 向右旋转90度
tt.pencolor('purple') # 设置画笔的颜色:蓝色
tt.forward(120) # 前进120
# 6 循环画布
tt.mainloop()

- 效果实现

5、落笔与抬笔

- 说明

        在通过  turtle.goto 方法移动到某一个位置,则会在画笔移动中留下痕迹,则可以通过落笔与抬笔,则可以消除画笔痕迹(想想与生活中使用笔写字一样的)


- 操作步骤

  1 导入turtle

  2 创建画布(设置画布宽高与窗口标题)

  3 设置画笔(颜色、线宽、速度)

  4 设置抬笔与落笔 

        turtle.up() - 抬起笔
        turtle.down() - 放下笔

  5 控制移动画笔(前进/后退、位置)

  6 循环画布


- 代码实现

# 1 导入turtle
import turtle as tt
# 2 创建画布(设置画布宽高与窗口标题)
tt.setup(800, 600)
tt.title("ITB业生")
# 3 设置画笔(颜色、线宽、速度)
tt.pencolor('red')
tt.width(4)
tt.speed(1)
# 4 设置抬笔与落笔
tt.up() # 抬笔
# 5 移动画笔(前进/后退、位置)
tt.goto(0, 100) # 移动(0, 100)
tt.down() # 落笔
tt.forward(100)
tt.up() # 抬笔
tt.goto(-120, 100)
tt.pencolor('pink')
tt.down() # 落笔
tt.back(120)
# 6 循环画布
tt.mainloop()

- 效果实现

6、绘制圆

- 实现步骤

  1 导入turtle

  2 创建画布(设置画布宽高与窗口标题)

  3 设置画笔(颜色、线宽、速度)

  4 设置抬笔与落笔 

  5 控制移动画笔(前进/后退、位置)

  6 绘制圆(圆环、圆弧、实心圆)

        turtle.circle(半径)                    - 画一个完整的圆环
        turtle.circle(半径, 角度)         - 画指定角度对应的圆弧 
        turtle.dot(直径, 颜色)            - 直径为指定值的画实心圆及颜色

  7 循环画布


- 代码实现

# 1 导入turtle
import turtle as tt
# 2 创建画布(设置画布宽高与窗口标题)
tt.setup(800, 600)
tt.title("ITB业生")
# 3 设置画笔(颜色、线宽、速度)
tt.pencolor('red')
tt.width(4)
tt.speed(1)
# 4 设置抬笔与落笔
tt.up() # 抬笔
# 5 移动画笔(前进/后退、位置)
tt.goto(0, 100) # 移动(0, 100)
tt.down() # 落笔
# 6 绘制圆(圆环、圆弧、实心圆)
# --------------- 绘制圆环 -------------------
tt.circle(50) # 绘制半径为50的圆形
# --------------- 绘制圆弧 -------------------
tt.up()
tt.pencolor('blue')
tt.goto(-50, -100) # 移动(-50, -100)
tt.down()
tt.circle(60, -180) # 绘制半径为60的圆形,弧度为-180
# --------------- 绘制实心圆 -------------------
tt.up()
tt.pencolor('green')
tt.goto(100, 200) # 移动(100, 200)
tt.down()
tt.dot(80, 'orange') # 绘制半径为90的圆形,填充为橙色
# 7 循环画布
tt.mainloop()

- 效果实现

7、颜色填充

- 实现步骤

  1 导入turtle

  2 创建画布(设置画布宽高与窗口标题)

  3 设置画笔(颜色、线宽、速度)

  4 设置抬笔与落笔 

  5 控制移动画笔(前进/后退、位置)

  6 设置开始与结束填充 

        turtle.fillcolor(颜色)         - 设置填充颜色
        turtle.begin_fill()              - 开始填充
        turtle.end_fill()               - 结束填充

  7 绘制形状

  8 循环画布


- 代码实现

# 1 导入turtle
import turtle as tt
# 2 创建画布(设置画布宽高与窗口标题)
tt.setup(800, 600)
tt.title("ITB业生")
# 3 设置画笔(颜色、线宽、速度)
tt.pencolor('red')
tt.width(4)
tt.speed(1)
# 4 设置抬笔与落笔