Note of Python Turtle
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的更多相关文章
- python+turtle 笔记
用Python+turtle绘制佩琪: from turtle import * def nose(x,y):#鼻子 penup()#提起笔 goto(x,y)#定位 pendown()#落笔,开始画 ...
- 从Scratch到Python——python turtle 一种比pygame更加简洁的实现
从Scratch到Python--python turtle 一种比pygame更加简洁的实现 现在很多学校都开设了Scratch课程,学生可以利用Scratch创作丰富的作品,然而Scratch之后 ...
- 让小乌龟可以唱歌——对Python turtle进行拓展
在Scratch中,小猫是可以唱歌的,而且Scratch的声音木块有着丰富的功能,在这方面Python turtle略有欠缺,今天我们就来完善一下. Python声音模块 Python处理声音的模块很 ...
- Note of Python Math
Note of Python Math math 库是Python 提供的内置数学类函数库,而其中复数类型常用于科学计算,一般计算并不常用,因此math 库不支持复数类型.math 库一共提供4个数学 ...
- Python turtle绘制阴阳太极图代码解析
本文详细分析如何使用Python turtle绘制阴阳太极图,先来分解这个图形,图片中有四种颜色,每条曲线上的箭头表示乌龟移动的方向,首先从中心画一个半圆(红线),以红线所示圆的直径作半径画一个校园, ...
- 【Python】-NO.97.Note.2.Python -【Python 基本数据类型】
1.0.0 Summary Tittle:[Python]-NO.97.Note.2.Python -[Python 基本数据类型] Style:Python Series:Python Since: ...
- 【Python】-NO.99.Note.4.Python -【Python3 条件语句 循环语句】
1.0.0 Summary Tittle:[Python]-NO.99.Note.4.Python -[Python3 条件语句 循环语句] Style:Python Series:Python Si ...
- 【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 ...
- 【Python】-NO.96.Note.2.Python -【Python 基础】
1.0.0 Summary Tittle:[Python]-NO.95.Note.1.Python -[Python 老男孩 基础]- Style:Python Series:Python Since ...
随机推荐
- 如何使用 Visual C# .NET 处理 Excel 事件
事件处理概述 Visual C# .NET 使用委派处理来自组件对象模型 (COM) 服务器的事件.委派是 Microsoft Visual Studio .NET 中的一个新概念.对于 COM 事件 ...
- codeforces 1041A Heist
electronic a.电子的 heist v.抢劫 in ascending order 升序 indice n.标记 device n.装置设备 staff n.职员 in arbitrary ...
- Linux网络编程学习(二) ----- 进程控制(第三章)
1.进程和程序 程序是一个可执行文件,而一个进程是一个执行中的程序实例.一个进程对应于一个程序的执行,进程是动态的,程序是静态的,多个进程可以并发执行同一个程序.比如几个用户可以同时运行一个编辑程序, ...
- 从performance_schema中查看MySQL活动Session的详细执行信息
本文出处:http://www.cnblogs.com/wy123/p/7851294.html 在做数据库的异常诊断的时候,之前在SQL Server上的时候,最主要的参考信息之一就是去看当前的活动 ...
- hbase--知识点总结2
--用java操作hbase 1.配置jar包环境 创建hbase项目 --> 新建folder文件夹 --> 将hbase相关jar包全部导入到java项目之中 --> add b ...
- Flask最强攻略 - 跟DragonFire学Flask - 第九篇 Flask 中的蓝图(BluePrint)
蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查看 ...
- JS中的事件(对象,冒泡,委托,绑定)
- 事件,是文档或浏览器窗口中发生的一些特定的交互瞬间,JS与HTML之间的交互是通过事件实现的 对于web应用来说,有下面这些代表性事件:点击事件,鼠标移动,按下键盘等等 - 事件,是用户和浏览器之 ...
- 错误:libstdc++.so.6: wrong ELF class
1.安装mysql的时候报错缺少GLIBCXX_3.4.15 2.按照网上的下载了libstdc++.so.6.0.17 放到/usr/lib64 下 删除之前的libstdc++.so.6的链接 重 ...
- 整合SpringMVC框架和Spring框架
-------------------------siwuxie095 整合 SpringMVC 框架和 Spring 框架 ...
- HDU 5828 Rikka with Sequence(线段树区间加开根求和)
Problem DescriptionAs we know, Rikka is poor at math. Yuta is worrying about this situation, so he g ...