-
2020-12-04 11:04:40
turtle绘图
turtle绘图是python中引入的一个简单绘图工具,利用turtle模块绘图又被称为海龟作图,因为绘图过程可以看作是一个小海龟行走的轨迹。海龟就像是屏幕上的画笔,屏幕就是画布。
1.1导入turtle模块
使用turtle绘图时,首先要导入turtle模块,有以下两种方式:
(说明:在python中调入模块函数无外乎两种方法:import +函数名(numpy ,matplotlib.pyplt ,math 等;from +函数名 import *)
1.2turtle 绘图属性
绘图有三个要素:位置,方向,画笔。
常用的函数和功能如下:
使用这些函数时,也是直接作为语句编写即可。
如下面的示例(1.1)是绘制一个六边形:
运行结果如下:
下面给大家分享一个好看的示例:
源码如下(是由笛卡尔心形线的表达式改的):
怎么样?是不是很有趣?感兴趣的小可爱可以到python官网查询更多神奇的库。下次小编给大家分享python另一个神奇的库——wordcloud(词云)。
更多相关内容 -
用C/C++编的海龟作图
2019-02-26 12:00:11海龟作图,程序虽短,但功能齐全!! 设置海龟类型的基本操作为:procedure StartTurtleGraphlcs ;{显示作图窗口,并在窗口内写出本人的姓名、上机号和实验题号。}procedure StartTurtle;{令海龟处于作图的初始... -
【编程课堂】海龟作图
2021-05-20 08:22:58原标题:【编程课堂】海龟作图0、前言turtle是 python 内置的一个比较有趣味的模块,俗称 海龟作图,它是基于 tkinter 模块打造,提供一些简单的绘图工具,海龟作图最初源自 20 世纪 60 年代的 Logo 编程语言,之后...原标题:【编程课堂】海龟作图
0、前言
turtle是 python 内置的一个比较有趣味的模块,俗称 海龟作图,它是基于 tkinter 模块打造,提供一些简单的绘图工具,海龟作图最初源自 20 世纪 60 年代的 Logo 编程语言,之后一些很酷的 Python 程序员构建了 turtle 库,让其他程序员只需要 import turtle,就可以在 Python 中使用海龟作图。
1、基本功能介绍
在海龟作图中,我们可以编写指令让一个虚拟的(想象中的)海龟在屏幕上来回移动。这个海龟带着一只钢笔,我们可以让海龟无论移动到哪都使用这只钢笔来绘制线条。通过编写代码,以各种很酷的模式移动海龟,我们可以绘制出令人惊奇的图片。使用海龟作图,我们不仅能够只用几行代码就创建出令人印象深刻的视觉效果,而且还可以跟随海龟看看每行代码如何影响到它的移动。这能够帮助我们理解代码的逻辑。所以海龟作图也常被用作新手学习 Python 的一种方式。
1.1 Turtle motion (运动控制)
本节中包含了运动控制中常用的一些函数
turtle.goto(x,y)
画笔定位到坐标(x,y)
turtle.forward(distance)
向正方向运动 distance 长的距离
turtle.backward(distance)
向负方向运动 distance 长的距离
turtle.right(angle)
向右偏 angle 度
turtle.left(angle)
向左偏 angle 度
turtle.home()
回到原点
turtle.circle(radius, extent=None, steps=None)
画圆形 radius 为半径,extent 为圆的角度
turtle.speed(speed)
以 speed 速度运动
看到这么多函数肯定已经头大了,我们以例题来讲解。
首先画一个边长为100的正方形,然后再以半径为50画出其3/4圆。
# 控制画笔的速度
turtle.speed( 5)
# 将画笔定位到原点
turtle.goto( 0, 0)
# 从原点开始,画出一个边长为100的正方形
fori inrange( 4):
# 正向运动 100 的距离turtle.forward( 100)
# 向右偏 90 度turtle.right( 90)
# 将画笔定位到原点
turtle.home()
# 画出一个半径为100,占3/4的圆
turtle.circle( 50, 270)
最后得到以下结果:
1.2 Pen control (画笔控制)
本节包含了对画笔的控制函数,常用的如下:
turtle.pendown()
落笔,在此状态下会画出运动的轨迹
turtle.penup()
起笔,在此状态下不会画出运动的轨迹
turtle.pensize(width=None
画笔粗细
turtle.pencolor(*args
画笔颜色
turtle.fillcolor(*args)
填充颜色
turtle.begin_fill()
开始填充
turtle.end_fill()
结束填充
turtle.write(arg, move=False, align=”left”, font=(“Arial”, 8, “normal”))
写文字
同样,我们以一个例题来讲解。
画一个正方形并填充,最后写一些文字
# 控制画笔颜色
turtle.pencolor( 'red')
# 落笔
turtle.pendown()
# 设置填充颜色
turtle.fillcolor( 'blue')
# 开始填充
turtle.begin_fill()
# 从原点开始,画出一个边长为100的正方形
fori inrange( 4):
# 正向运动 100 的距离turtle.forward( 200)
# 向右偏 90 度turtle.right( 90)
# 结束填充turtle.end_fill()turtle.penup()turtle.goto( 100,- 100)turtle.write( 'Crossin编程教室')
最后的结果是这样
同时,我们还可以设置画笔打粗细、画笔的速度等属性。
1.2 Window control (视窗控制)
这里有两个常用的函数
turtle.bgcolor(*args)
设置背景颜色
turtle.bgpic(picname=None)
背景图片填充
设置代码如下
turtle.bgcolor( 'red')turtle.bgpic( r'yourpic.png') 2、海龟作图实例
我们用几个简单的例子讲解海龟作图的用法。
2.1 用正方形画圆 importturtle
fori inrange( 360): turtle.setheading(i)
fori inrange( 4): turtle.forward( 100) turtle.left( 90)
360 个正方形每隔 1 度排列,短短几行代码可以生成一个漂亮规则的图形。
2.2 红色的五角星
使用填充功能画出一个大红星
importturtleturtle.color( 'red', 'red')turtle.begin_fill()
fori inrange( 5): turtle.forward( 100) turtle.right( 144)turtle.end_fill()
结果如图:
2.3 更多案例
讲的再多也不如自己动手做一做,我们在网上挑选了几张使用 turtle 做的有意思的图片,大家可以欣赏并试着做一下。
3、后记
更丰富详细的功能及知识可以参考:
官方文档:https://docs.python.org/3/library/turtle.html
海龟作图—用 Python 绘图:http://www.epubit.com.cn/book/onlinechapter/37788
Simple drawing with turtle:https://opentechschool.github.io/python-beginners/en/simple_drawing.html
Hello, little turtles!:http://openbookproject.net/thinkcs/python/english3e/hello_little_turtles.html
Turtle examples:https://michael0x2a.com/blog/turtle-examples
Easy Designs - Turtle Graphics Python:http://www.instructables.com/id/Easy-Designs-Turtle-Graphics-Python/
近期文章推荐阅读:
欢迎加入
Crossin的编程教室
crossincode.com
新手入门QQ群:553518572
微信请加 crossin11 留言入群(新手/进阶)
请把我们分享给身边爱学习的小伙伴 :)返回搜狐,查看更多
责任编辑:
-
Python—海龟作图
2020-09-17 13:45:191、因为海龟作图需要用到"turtle"库,所以先介绍库的三种引用方法: (1):from 库名 import 函数名/ * ; (2):import 库名 ——>使用时:库名.函数名 (3):import 库名 as 函数名 2、turtle的使用方法: ...1、因为海龟作图需要用到"turtle"库,所以先介绍库的三种引用方法:
(1):from 库名 import 函数名/ * ;
(2):import 库名 ——>使用时:库名.函数名
(3):import 库名 as 函数名
2、turtle的使用方法:
(1)Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。
(2)画布:就是海龟作图是大小区域
turtle.setup(width=800,height=800, startx=100, starty=100)
(3)画笔:在画布中,画笔原始在画布中心位置,海龟面朝x轴的正半轴(如上图)
turtle.pensize():设置画笔的宽度;
turtle.pencolor():设置海龟的颜色
turtle.speed():设置海龟爬行的速度
(4)接下来是海龟作图的一些常见命令(在其他大佬博客看到的):画笔运动的命令:
画笔控制的命令:
全局控制的命令:
海龟作图的例子:
代码:import turtle as t t.shape("turtle") t.pencolor("red") t.circle(50) t.penup() t.pencolor("green") t.goto(120,0) t.pendown() t.circle(50) t.penup() t.pencolor("black") t.goto(240,0) t.pendown() t.circle(50) t.penup() t.pencolor("yellow") t.goto(60,-50) t.pendown() t.circle(50) t.penup() t.pencolor("blue") t.goto(180,-50) t.pendown() t.circle(50)
结果:
-
海龟作图---用Python绘图
2020-11-20 20:35:43它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令”操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令。二、运动命令forward(degree)#向前移动距离degree...一、关于Turtle
“turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令”
操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令。
二、运动命令
forward(degree)
#向前移动距离degree代表距离
backward(degree)
#向后移动距离degree代表距离
right(degree)
#向右移动多少度
left(degree)
#向左移动多少度
goto(x,y)
#将画笔移动到坐标为x,y的位置
speed(speed)
#画笔绘制的速度范围[0,10]整数
三、画笔控制命令
down()
画笔落下,移动时绘制图形
up()
画笔抬起,移动时不绘制图形
setheading(degree)
海龟朝向,degree代表角度
reset()
恢复所有设置
pensize(width)
画笔的宽度
pencolor(colorstring)
画笔的颜色
fillcolor(colorstring)
绘制图形的填充颜色
fill(True)
fill(False)
四、程序体验
1.奥运五环
代码:
#绘制奥运五环
import turtle
turtle.width(15) #画笔粗细
turtle.color("blue")
turtle.circle(50)
turtle.penup()
turtle.goto(120,0)
turtle.down()
turtle.color("black")
turtle.circle(50)
turtle.penup()
turtle.goto(240,0)
turtle.down()
turtle.color("red")
turtle.circle(50)
turtle.penup()
turtle.goto(60,-50)
turtle.down()
turtle.color("yellow")
turtle.circle(50)
turtle.penup()
turtle.goto(180,-50)
turtle.down()
turtle.color("green")
turtle.circle(50)
显示效果:
2.使用递归,可以绘制出非常复杂的图形。例如,下面的代码可以绘制一棵分型树:
from turtle import *
# 设置色彩模式是RGB:
colormode(255)
lt(90)
lv = 14
l = 120
s = 45
width(lv)
# 初始化RGB颜色:
r = 0
g = 0
b = 0
pencolor(r, g, b)
penup()
bk(l)
pendown()
fd(l)
def draw_tree(l, level):
global r, g, b
# save the current pen width
w = width()
# narrow the pen width
width(w * 3.0 / 4.0)
# set color:
r = r + 1
g = g + 2
b = b + 3
pencolor(r % 200, g % 200, b % 200)
l = 3.0 / 4.0 * l
lt(s)
fd(l)
if level < lv:
draw_tree(l, level + 1)
bk(l)
rt(2 * s)
fd(l)
if level < lv:
draw_tree(l, level + 1)
bk(l)
lt(s)
# restore the previous pen width
width(w)
speed("fastest")
draw_tree(l, 4)
done()
显示效果:执行上述程序需要花费一定的时间,最后的效果如下
-
turtle(海龟作图),C++版
2020-10-03 21:37:00海龟作图 引言 turtle来源 Logo的原型来自另一个计算机语言LISP,派普特修改了LISP的语法使其更易于阅读。Logo常被称作没有括号的Lisp。 Logo是一种解释型语言,和其他语言不同的是,它内置一套海龟绘图(Turtle ... -
python海龟作图完成小猪佩奇
2021-01-28 19:16:36python海龟作图完成小猪佩奇来源:常州童程童美少儿编程学校时间:2020/10/12 11:44:59观察这个图像可以发现,小猪佩奇在构图基本是各种曲线,类抛物线、类圆、类椭圆、类二次贝塞尔曲线。这里说的都是“类”,这也... -
海龟作图 课程设计 非图形化界面
2009-11-02 16:11:42很完整的海龟作图,有实验报告~~! 海龟的相关类型说明为: #define UP 0 #define DOWN 1 Typedef int penState; //取值UP或者DOWN Typedef struct{float v,h;}aPoint; Typedef struct{ Int heading; //龟头... -
海龟作图之递归法画梅花源代码.py
2020-07-03 01:28:34原来代码也可以如此美丽,用Python画出冬日里盛开的梅花,铮铮傲骨,君子之躯,大雪漫天,花落满地,飘香四溢。 -
用python编写程序 ---简单的海龟作图
2020-01-13 22:48:10t.forward(x) #让海龟在屏幕上移动的时候用海龟的钢笔进行绘制, t.forward(x) 表示先前移动x个像素点 t.left(90) # 向左旋转90° 结果: 当改成旋转91°时: t.left(91) ... -
Python新手进阶教程之1、海龟作图——用Python绘图(1)
2021-01-26 16:09:24使用海龟作图,我们不仅能够只用几行代码就创建出令人影响深刻的视觉效果,而且还可以跟海龟看看几行代买如何影响到它的移动。者能够帮助我们理解代码的逻辑。 1.2第一个海龟程序 让我们使用海龟作图来编写第一个... -
2.海龟作图----用Python绘图
2021-09-15 09:34:48第一个海龟程序 # SquareSpiral1.py 画一个正方形螺旋线 import turtle t=turtle.Pen() for x in range(1,100): #1<=x<100 t.forward(x) t.left(90) 旋转的海龟 #SquareSpiral2.py import turtle... -
python1|海龟作图法
2020-11-21 02:02:53输入代码:import turtlet = turtle.Pen()for x in range(100):t.circle(x)t.left(30)画出来是这样的:把circle改成forward:import turtlet = turtle.Pen()for x in range(100):t.forward(x)t.left(30)就变成这样了... -
用python的turtle,画爱心,表白,求婚完整代码,海龟作图创意
2020-11-21 02:02:58#设置朝向 turtle.fd(300) #前进 turtle.bk(600) #后退 # 初始化海龟的位置 def go_start(x, y, state): turtle.pendown() if state else turtle.penup() turtle.goto(x, y) #画线,state为真时海龟回到原点,为假时... -
Python学习总结(1)---turtle海龟作图
2020-03-20 16:47:38海龟作图1.海龟移动和绘制2.获取海龟的状态3.设置与度量单位4.画笔绘图状态5.画笔颜色控制6.填充7.更多绘图控制8.海龟可见性9.海龟外观10.使用事件11.特殊海龟方法 1.海龟移动和绘制 forward(distance) 前进 ... -
严蔚敏海龟作图初步程序适合参考
2015-12-28 20:52:46前进 <长度> 前进 100 海龟前进100个点 后退 <长度> 后退 100 海龟后退100个点 左转 <角度> 左转 90 左转90度 右转 <角度> 右转 90 右转90度 ......这是一个基本框架,还有其他功能没实现,那是留个读者实现... -
C程序——简单海龟作图
2011-12-28 10:17:23活动区域5050,超出区域,海龟死亡 实验程序 -
海龟作图—用Python 绘图
2016-05-25 18:31:44在本章中,我们将编写...在海龟作图中,我们可以编写指令让一个虚拟的(想象中的)海龟在屏幕上来回移动。这个海龟带着一只钢笔,我们可以让海龟无论移动到哪都使用这只钢笔来绘制线条。通过编写代码,以各种很酷 -
Python, turtle海龟作图,如何添加背景图片?
2020-11-20 20:48:14展开全部turtle.bgpic(r'res/bg.png') #这样设置62616964757a686964616fe58685e5aeb931333431346334。def bgpic(self, picname=None):"""Set background image or return name of current backgroundimage.Optional ... -
c语言程序设计 做的海龟作图
2021-05-25 00:40:29c语言程序设计做的海龟作图0/*简单海龟作图,活动区域50*50,超出区域,海龟死亡*/#includevoid print(int [][51]);void move(int [][51],int,int,int);int x=0,y=0; //海龟位置坐标,为全局变量,初始在左上角。int... -
python海龟绘图实例教程
2020-12-25 06:47:56本文以实例形式介绍了python turtle模块即海龟绘图的使用方法,对于需要进行图形编程的朋友相信会有一定的借鉴价值。 python turtle模块简介: python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle ... -
Python每日一记24>>>海龟作图turtle安装失败
2019-03-25 12:52:48本来想试试一试海龟作图,但是安装失败,就上网查了一下什么问题,因此今日分享turtle库安装不了的问题 常规我们在cmd窗口安装会出现错误,于是我到pycharm上安装,依然无法完成,问题就在于版本问题。其在python2上... -
海龟作图C源程序(以通过认证)
2009-11-01 12:56:21海龟作图源程序(以通过认证) #include "graphics.h" #include "math.h" #include "stdio.h" #include "conio.h" #include "bios.h" #include "dos.h" #include "io.h" char key_state[128],key_pressed[128]; void ... -
python海龟作图20秒完成小猪佩奇,附源码!
2018-06-04 18:37:11使用海龟作图,我们不仅能够只用几行代码就创建出令人印象深刻的视觉效果,而且还可以跟随海龟看看每行代码如何影响到它的移动。这能够帮助我们理解代码的逻辑。所以海龟作图也常被用作新手学习 Python 的一种方式。... -
轻松学会python的turtle模块,画一箭穿心、小人儿发射爱心、520表白完整代码,海龟作图小创意
2020-10-28 14:41:04之所以叫海龟模块呢,是因为运用此模块画图时,就感觉像一只小海龟,在沙滩上爬呀爬,然后留下了痕迹(可以闭上眼想象一下,哈哈哈) 那么,关于turtle模块有哪些知识点呢? 如果想实现乌龟在海滩爬行,那么除了乌龟... -
海龟绘图法绘制有层次感的奥运五环
2019-08-07 08:58:27海龟绘图法绘制有层次感的奥运五环,代码