Note of Python Turtle

        Turtle 库函数是 Python语言中一个流行的绘图函数库。Turtle 意思是海龟,在Python中显示为一个小箭头,通过它的移动而留下美妙的曲线~~~

1.调用库函数

(1) 导入库函数:import  <库名>

使用库中函数:<库名> . <函数名> (<函数参数>)

import turtle
turtle.pensize(3)
turtle.forward(250)

(2) 导入库函数:from  <库名>  import * ( *为通配符 )

使用库中函数:<函数名> (<函数参数>)

from turtle import *
pensize(3)
forward(250)

效果示例:

2. 绘图控制函数

2.1 画布:画布是用于绘图的区域,可控制其界面大小。

(1) setup ( width , height , startx , starty )

width : 窗口宽度,值为整数则对应像素值;值为小数则为窗口宽度与屏幕的比例。

height : 窗口高度,值为整数则对应像素值;值为小数则为窗口高度与屏幕的比例。

startx : 窗口左侧与屏幕左侧的像素距离,值为None则窗口位于窗口水平中央。

starty : 窗口右侧与屏幕右侧的像素距离,值为None则窗口位于窗口垂直中央。

(2) screensize ( canvwidth = None , canvheight = None , bg = None)

canvwidth:窗口宽度,单位为像素

canvheight:窗口高度,单位为像素

bg:窗口背景颜色

from turtle import setup         #导入turtle.setup函数
setup(650,350,350,180) #方法一
screensize(650,350,"green") #方法二

2.2 画笔

(1) 抬笔:penup() / pu() / up()               绘图时不留下痕迹

(2) 落笔:pendown() / pd() / down()                绘图时留下痕迹

(3) 画笔速度:speed( speed )                   设置画笔的速度,speed在 [0,10] 之间,speed 为 0 时最快

(4) 画笔宽度:pensize( width )                设置画笔的宽度

(5) 画笔颜色:pencolor( colorstring ) / pencolor(R,G,B)    设置画笔的颜色

英文名称

中文名称

R  G  B

white

白色

255  255  255

black

黑色

0  0  0

gray

灰色

190  190  190

darkgreen

深绿色

0 100  0

gold

金色

255  215  0

violet

紫罗兰

238  130  238

purple

紫色

160  32  240

 

2.3 绘图

命令

说明

fd(distance) / forward(distance)

distance 为前进距离的像素值

bk(distance) / backward(distance)

distance 为后退距离的像素值

lt(angle) / left(angle)

angle 为左转的角度

rt(angle) / right(angle)

angle 为右转的角度

seth(angle) / setheading(angle)

angle 为转到的角度,即改变绘图的方向

circle(radius [,extent])

绘制以radius为半径、以angle为角度弧形

(extent 为None时,绘制整个圆;radius 为正数时,绘制的图形在小海龟左侧;radius 为负数时,绘制的图形在小海龟右侧)

goto(x,y)

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

ht() / hideturtle()

隐藏小海龟

st() / showturtle()

显示小海龟

fillcolor(colorstring)

填充颜色

begin_fill()

开始填充图形

end_fill()

填充完成

2.4 控制命令

命令

说明

home()

使小海龟回到初始位置 (0,0)

clear()

清空窗口,但小海龟的位置和状态不变

reset()

清空窗口,且重置小海龟的状态为初始状态

undo()

撤销上一个动作

stamp()

复制当前图形

write(s [,font=(“font_name”,font_size,”font_type”)])

文本,s 为文本内容,font 是字体的参数,内部分别是字体名称,大小和类型

3 绘制图形示例

3.1 绘制叠加等边三角形

# 往里叠加的等边三角形from turtle import *
n = int(input("请输入需要绘制的三角形个数:"))
d = 300for i in range(n):
for j in range(3):
seth((-1)**i*120*j)
fd(d)
fd(-d/2)
d /= 2
ht()
pu()
home()
write("已绘制{}个等边三角形".format(n))

3.2 绘制正方形螺旋线

#正方形螺旋线from turtle import *
r = 10 #最小边长
d = 10 #边与边的距离
n = 25 #圈数
speed(10) #加快绘图速度
for i in range(2*n):
fd(r)
left(90)
fd(r)
left(90)
r += d

  3.3 绘制小蟒蛇

#小蟒蛇from turtle import *
setup(900,300,200,180) #设置画布大小
pensize(30) #设置画笔大小
pencolor("purple") #设置画笔颜色
seth(-40) #初始画笔方向
n = 3
r = 40
angle = 80for i in range(n):
circle(r,angle)
circle(-r,angle)
circle(r,angle/2)
fd(r/2)
circle(r/2,180)
fd(r)

3.4 绘制国际象棋棋盘

from turtle import *
d = int (input("d = ")) #获取正方形长度
speed(0) # 提高画笔速度
def Sq_white(): # 定义函数:画一小格白框框
for i in range(4):
fd(d)
rt(90)
fd(d) def Sq_black(): # 定义函数:画一小格黑框框
fillcolor("black")
begin_fill()
for i in range(4):
fd(d)
rt(90)
end_fill()
fd(d) def W_B(n): # 定义函数:白黑框框组合
for a in range(n):
Sq_white()
Sq_black() def B_W(n): # 定义函数:黑白框框组合
for b in range(n):
Sq_black()
Sq_white() def Turn(): # 定义函数:画完一次转的角度
rt(90)
fd(d) def Control2(): # 执行的函数2:使用普通的方法,程序简单
for p in range(4):
W_B(4)
rt(90)
fd(2*d)
rt(90)
W_B(4)
rt(180) Control2()

Note of Python Turtle的更多相关文章

  1. python+turtle 笔记

    用Python+turtle绘制佩琪: from turtle import * def nose(x,y):#鼻子 penup()#提起笔 goto(x,y)#定位 pendown()#落笔,开始画 ...

  2. 从Scratch到Python——python turtle 一种比pygame更加简洁的实现

    从Scratch到Python--python turtle 一种比pygame更加简洁的实现 现在很多学校都开设了Scratch课程,学生可以利用Scratch创作丰富的作品,然而Scratch之后 ...

  3. 让小乌龟可以唱歌——对Python turtle进行拓展

    在Scratch中,小猫是可以唱歌的,而且Scratch的声音木块有着丰富的功能,在这方面Python turtle略有欠缺,今天我们就来完善一下. Python声音模块 Python处理声音的模块很 ...

  4. Note of Python Math

    Note of Python Math math 库是Python 提供的内置数学类函数库,而其中复数类型常用于科学计算,一般计算并不常用,因此math 库不支持复数类型.math 库一共提供4个数学 ...

  5. Python turtle绘制阴阳太极图代码解析

    本文详细分析如何使用Python turtle绘制阴阳太极图,先来分解这个图形,图片中有四种颜色,每条曲线上的箭头表示乌龟移动的方向,首先从中心画一个半圆(红线),以红线所示圆的直径作半径画一个校园, ...

  6. 【Python】-NO.97.Note.2.Python -【Python 基本数据类型】

    1.0.0 Summary Tittle:[Python]-NO.97.Note.2.Python -[Python 基本数据类型] Style:Python Series:Python Since: ...

  7. 【Python】-NO.99.Note.4.Python -【Python3 条件语句 循环语句】

    1.0.0 Summary Tittle:[Python]-NO.99.Note.4.Python -[Python3 条件语句 循环语句] Style:Python Series:Python Si ...

  8. 【Python】-NO.98.Note.3.Python -【Python3 解释器、运算符】

    1.0.0 Summary Tittle:[Python]-NO.98.Note.3.Python -[Python3 解释器] Style:Python Series:Python Since:20 ...

  9. 【Python】-NO.96.Note.2.Python -【Python 基础】

    1.0.0 Summary Tittle:[Python]-NO.95.Note.1.Python -[Python 老男孩 基础]- Style:Python Series:Python Since ...

随机推荐

  1. Vue 封装的loading组件

    <template> <div class="loadEffect"> <span></span> <span>< ...

  2. Django多个中间件的执行顺序

    Django中的中间件是一个轻量级.底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出.中间件的设计为开发者提供了一种无侵入式的开发方式,增强了Django框架的健 ...

  3. Redis使用及工具类

    原地址:https://www.cnblogs.com/wyy123/p/6078593.html [学会安装redis] 从redis.io下载最新版redis-X.Y.Z.tar.gz后解压,然后 ...

  4. Halcon旋转图片的研究

    在Halcon中有两个用于图像旋转的函数: 1,rotate_image *Image和ImageRotate分别是输入和输出图像 *Phi是输入的旋转度数 *interpolation是内插方式,默 ...

  5. GIT TEAMWORK

    Learn GIT TEAMWORK generalizations Congratulations, you now know enough to start collaborating on Gi ...

  6. 网站加入QQ在线客服

    <!-- qq客服 --> <div class="QQFloat" > <div class="qq"> <div ...

  7. flume知识点总结

    首先介绍一下在flume中常用的一个数据格式,以及使用该格式的优缺点:  从flume写数据到hdfs中的时候,使用二进制格式相对于使用纯文本来说是一种更好的选择,因为大多数二进制格式都有一些方法指明 ...

  8. JAVA数据库连接池C3p0 以及阿里Druid提供的连接池

    一:连接池的定义 本质上就是个容器(集合) 存放数据库连接的容器,当系统初始化后,容器被创建,容器中就会申请一些连接对象,当用户来访问数据库的时候,从容器中取连接对象,用户用完之后,归还. 二:常用的 ...

  9. cdnbest里站点域名不同步到节点,报400错误的一般原因

    报400错误一般是站点里的域名没有同步到节点上面的原因,产生的原因一般是下面两点原因: 1.检查节点列表如下图所示的状态是否打钩,这是节点和主控的通信状态,打叉表示连接有问题 这里打叉的几种原因(1) ...

  10. C++中的覆盖与隐藏(详细讲解)

    C++类中覆盖与隐藏一直是一个容易理解出错的地方,接下来我就详细讲解一下区别在何处 覆盖指的是子类覆盖父类函数(被覆盖),特征是: 1.分别位于子类和父类中 2.函数名字与参数都相同 3.父类的函数是 ...