应部分朋友后台留言的要求,再次把去年的Python笔记拿来分享,此笔记为作者于2018年度准备 Pthon国家计算机二级考试的笔记,如有错误,请后台留言指导。

这一讲,主要简单的介绍:turtle 库

——三七驿馆


--- -----

python显示海龟 python海龟circle_字符串

 ----- 

---   考纲:国二python考纲规定 turtle 库为必选的标准库之一 ,因此,这一讲,我们讨论 turtle 库的详细用法。 turtle(海龟) 库是Python的重要标准库之一, 它能够进行基本的图形绘制 , 把画笔形象的比喻成海龟在坐标系中的爬行 ,因此,便有了“ 前进 ”、“ 后退 ”、“ 旋转 ”等爬行行为,在坐标系中的爬行也通过“ 前进方向 ”、“ 后退方向 ”、“ 左侧方向 ”、“ 右侧方向 ”等小海龟自身角度来完成 开始时,海龟处在画布的坐标原点处,朝向x轴正方向 在介绍 turtle 库之前,我们先来了解一下作图的区域,即  canvas画布  ,我们可以 设置它的大小 :函数格式为: turtle.screensize(canvwidth=None, canvheight=None, bg=None) , 参数 分别为画布的 宽(单位像素) , 高 , 背景颜色 。如:turtle.screensize(800,600, "green")  此外, turtle.screensize() 默认大小为(400, 300) 在第四讲第二篇文章中提到了 import 引用功能库的几种方式,因此这里不再赘述,这里,我们直接调用函数。turtle 库中包含100多个功能函数,主要包括 窗体函数、画笔状态函数、画笔运动函数

三类, (一)窗体函数

: 重点介绍 turtle 库的 setup() 函数 ,函数使用格式为: turtle.setup(width,height,startx,starty) ,函数的作用为 设置 主窗体的大小和位置 ,该函数有四个参数: width , height : 分别表示窗体的 宽度 和 高度 。值 为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例, startx , starty : 这一坐标表示 矩形窗口左上角顶点的位置 , 如果为空,则窗口位于屏幕中心 。 (二)画笔状态函数:

首选是画笔的几个属性函数,如:画笔的粗细,颜色等:

        1) turtle.pensize(width):设置画笔的粗细为指定宽度;

        2) turtle.pencolor():没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green", "red",也可以是RGB 3元组。

 其余画笔状态函数

命令

描述

pendown()

放下画笔,移动时将绘制图形,缺省时也为绘制

turtle.penup()

提起画笔,不绘制图形,用于另起一个地方绘制

begin_fill()

填充开始时,调用该函数

end_fill()

填充结束时,调用该函数

filling()

返回填充状态,填充则为 True,否则为 False

clear()

清空turtle窗口,但是turtle的位置和状态不会改变

reset()

清空窗口,重置turtle状态为起始状态

stamp()

复制当前图形

hideturtle

隐藏画笔的 turtle 形状

showturtle()

显示画笔的 turtle 形状

isvisible()

如果turtle 可见,则返回 True

write(str [,font=("font-name",font_size,"font_type")])

输出 font 字体的字符串,str 为文本内容,font是字体的参数,分别为字体名称,大小和类型;font为可选项,font参数也是可选项

注:

①turtle.penup() 。该函数的别名为 turtle.pu() 或 turtle.up()

②turtle.pendown() 。该函数的别名为 turtle.pd() 或 turtle.down()

③turtle.pensize( width ) 。该函数的别名为 turtle.width()

(三)画笔运动函数

(三)画笔运动函数

命令

描述

forward (x)

向当前画笔方向移动 x 像素长度

backward(x)

向当前画笔相反方向移动 x 像素长度

right( β )

顺时针移动 β 角度

left( β )

逆时针移动 β角度

goto(x,y)

将画笔移动到坐标为(x,y)的位置

circle(r,β)

绘制一个半径为 r 和角度为 β 的圆或弧形

setx( )

将当前 x 轴移动到指定位置

sety( )

将当前 y 轴移动到指定位置

setheading(β)

设置当前朝向为 β 角度

home()

设置当前画笔位置为原点,朝向东。

dot(r,color)

绘制一个指定半径 r 和颜色 color 的圆点

undo()

   撤销画笔最后一步动作

speed

设置画笔移动速度,[0-10]之间的整数,数字越大越快

注:

①turtle.fordword( x ) 。该函数的别名为 turtle.fd( x )

②turtle.setheading( β ) 。该函数的别名为 turtle.seth( β )

小栗子【爱心螺旋圈】:

# 引入 turtle 库,并命新名为skimport turtle as sk   # 设置画布大小为(800,600),背景颜色为黑色sk.screensize(800,600, "black")  # 设置画笔移动速度sk.speed(6)    # 提供输入窗口 context=sk.textinput("绘制你的图形","想绘制的内容符号:")   # 定义一个颜色列表colors=["red","yellow","purple","blue"]  # 定义循环语句 for x in range(99):      #每四个为一组循环,定义画笔的颜色    sk.pencolor(colors[x%4])     # 提起画笔,不绘制形状    sk.penup()        # 沿着当前朝向前进 x*4 的距离    sk.forward(x*4)      # 落下画笔,开始绘制    sk.pendown()       # 打印文本    sk.write(context,font=("楷体",int((x+4)/4),"bold"))      # 向左旋转99°,继续开始下一个循环    sk.left(99)

效果如图:

python显示海龟 python海龟circle_字符串_02

python显示海龟 python海龟circle_字符串_03


到此,turtle 功能库就算介绍完成了,但关于 turtle 功能库的应用和学习尚未停止,可以在后台回复交流噢。


部分内容参照《全国计算机等级考试二级教程——Python语言程序设计2018版》,高等教育出版社,侵权删!