Python turtle学习笔记

题记:初学python的turtle库,特将学习到的知识点记下  ,以便日后的回顾学习

    ①turtle库基本函数介绍 ;②绘图举例

                                                                  

Turtle库的基本函数

这个表格记录了常用的几个函数

命令

说明

turtle.setup(a,b,c,d)
  •   (a, b): 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例
  •   (c, d): 这一坐标表示 矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心
turtle.bgcolor("color")

设置画布背景颜色

turtle.fd(x) 顺着画笔当前方向前进x(正负)
turtle.bk(x) 画笔移动到(a,b),当前方向不变
turtle.goto(a,b) 画笔移动到(a,b),当前方向不变
turtle.circle(r,angle) 画笔以r为半径,逆时针旋转angle(正负)度
turtle.seth(angle)(绝对角度) 改变当前画笔的方向,但不行进
turtle.left(angle)(海龟角度) 当前画笔方向左转angle度
turtle.right(angle)(海龟角度) 当前画笔方向右转angle度
turtle.colormode(mode) 1.0RGB小数模式(一般); 255RGB整数值模式
turtle.speed(speed) 画笔绘制的速度范围[0,10]整数
turtle.penup()/turtle.up() 画笔抬起
turtle.pendown()/turtle.down() 画笔放下
turtle.pensize(a) 设置画笔大小为a像素
turtle.pencolor(“red”) 设置画笔颜色为红色( 其他 )
turtle.fillcolor(颜色字符串) 绘制图形的填充颜色
turtle.begin_fill() 准备开始填充图形
turtle.end_fill() 填充完成
turtle.hideturtle() 隐藏箭头显示
turtle.showturtle() 显示箭头
turtle.done() 画图结束,手动关闭绘图窗口


还有一些全局控制命令

命令说明
turtle.clear() 清空turtle窗口,但是turtle的位置和状态不会改变
turtle.reset() 清空窗口,重置turtle状态为起始状态
turtle.undo() 撤销上一个turtle动作
turtle.isvisible() 返回当前turtle是否可见
stamp() 复制当前图形
turtle.write(s[,font=("font-name",font_size,"font_type")]) 写文本,s为文本内容,font是字体的参数,里面分别为字体名称,大小和类型;font为可选项, font的参数也是可选项

绘图举例

在绘图过程中,经常想让海龟(即画笔)移动到某一点,这时就需要抬起画笔,移动,然后落下。因为使用频率较高,所以可以设计一个函数将这个步骤简单化。 

def MoveTurtle(x,y):
    t.up()
    t.goto(x,y)
    t.down()

  

这样在后续的绘图中就可直接调用。

太极图

 1 import turtle as t 
 2 
 3 R = 360                    #太极圆半径
 4 t.setup(800,800)
 5 t.pensize(5)
 6 
 7 def MoveTurtle(x,y):
 8     t.up()
 9     t.goto(x,y)
10     t.down()
11 
12 t.fillcolor('black')
13 t.begin_fill()
14 MoveTurtle(0,R)
15 t.circle(-R,180)
16 t.circle(-R/2,180)
17 t.circle(R/2,180)
18 t.end_fill()
19 t.begin_fill()
20 MoveTurtle(0,R/3)
21 t.circle(-R/6)
22 t.end_fill()                #绘制黑色部分
23 
24 MoveTurtle(0,R)
25 t.circle(R,180)
26 t.fillcolor('white')
27 t.begin_fill()
28 MoveTurtle(0,-R/3)
29 t.circle(-R/6)
30 t.end_fill()               #绘制白色部分
31 
32 t.hideturtle()
33 t.done()

国际象棋

 1 #国际象棋盘.py
 2 import turtle as t  
 3 width = eval(input())     #输入小方格的边长
 4 t.speed(10)
 5 
 6 def MoveTurtle(x,y):
 7     t.up()
 8     t.goto(x,y)
 9     t.down()
10     
11 def DrawSquare (width):
12     t.begin_fill()
13     t.fillcolor('black')
14     for i in range(4):
15         t.fd(width)
16         t.left(90)
17     t.end_fill()                   #绘制黑色方格
18 
19 x  = 0 
20 while(x < 8*width):
21     y=x 
22     MoveTurtle(x,y)
23     DrawSquare(width)
24     while(y < 8*width):
25         y = y+(2*width)
26         if y < (8*width):
27             MoveTurtle(x,y)
28             DrawSquare(width)
29             MoveTurtle(y,x)
30             DrawSquare(width)
31     x = x+width                       #以网格建立坐标系,确定坐标点绘制小黑方格
32 
33 MoveTurtle(0,0)
34 for i in range(4):
35     t.forward(8 * width)
36     t.left(90)                       #绘框
37     
38 t.hideturtle()
39 t.done()

原文地址:https://www.cnblogs.com/nicefurmine/p/12520493.html