十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
简介:turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令。
创新互联建站主营赤峰网站建设的网络公司,主营网站建设方案,app软件开发,赤峰h5微信小程序开发搭建,赤峰网站营销推广欢迎赤峰等地区企业咨询
1.在文件头写上如下行,这能让我们在语句中插入中文
#-*- coding: utf-8 -*-
2.用import turtle导入turtle库
3.绘图窗口的原点(0,0)在正中间。默认情况下,海龟向正右方移动。
4.操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令
(1)运动命令:
forward(d)
向前移动距离d代表距离
backward(d)
向后移动距离d代表距离
right(degree)
向右转动多少度
left(degree)
向左转动多少度
goto(x,y)
将画笔移动到坐标为(x,y)的位置
stamp()
绘制当前图形
speed(speed)
画笔绘制的速度范围[0,10]整数
(2)画笔控制命令:
down()
画笔落下,移动时绘制图形
up()
画笔抬起,移动时不绘制图形
setheading(degree)
海龟朝向,degree代表角度
reset()
恢复所有设置
pensize(width)
画笔的宽度
pencolor(colorstring)
画笔的颜色
fillcolor(colorstring)
绘制图形的填充颜色
fill(Ture)
fill(False)
circle(radius, extent)
绘制一个圆形,其中radius为半径,extent为度数,例如若extent为180,则画一个半圆;如要画一个圆形,可不必写第二个参数
5.几个例子
1)画一个边长为60的三角形
#-*- coding: utf-8 -*-
importturtle
a=60
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.left(120)
2)画一个边长为60的正方形,并填充为红色,边框为蓝色
#-*- coding: utf-8 -*-
importturtle
turtle.reset()
a= 60
turtle.fillcolor("red")
turtle.pencolor("blue")
turtle.pensize(10)
turtle.fill(True)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.fill(False)
6.练习:
1)画一个五边形
2)画一个六边形
3)任意输入一个正整数m(=3),画一个多边形(m条边)
4)画一个五角星,如下所示,注意填充为红色
5)画一个中国象棋棋盘,如下图所示,其中汉字不必显示出来:
6)绘制奥运五环图,其中五种颜色分别为蓝色、黑色、红色、黄色和绿色。注意根据实际效果调整圆形的大小和位置。
[Turtle]库的使用
打开窗口:turtle.setup(650,350,200,200)
窗口的大小:width:650 height:350
窗口的位置:在屏幕的(200,200),默认情况下在屏幕的中心位置
画笔抬起,不留下痕迹:turtle.penup()
改变画笔的位置:turtle.fd(-250) 可用turtle.forward(-250)代替
画笔向后倒退250,默认情况下在窗口的正中心位置
画笔落下,留下痕迹:turtle.down()
改变画笔的粗细:turtle.pensize(25)
改变画笔的颜色:turtle.pencolor(“purple”)
改变画笔的前进方向:turtle.seth(-40)可用turtle.heading(-40)代替
画笔此时指向-40°的方向
循环:range(4)函数
参数是几就循环几次
for i in range(4):i的范维是[0,4)
画圆弧:turtle.circle(40,80); turtle.circle(-40,80)
40是圆弧的半径,代表以画笔所在位置的左侧距离40的地方为圆心
-40代表画笔所在位置右侧距离40的地方为圆心
80是代表弧度80的圆弧
画直线:turtle.fd(40)
画笔向前移动40
因为画笔已经落下,所以屏幕中有画笔的痕迹
画笔停止绘制,但窗口不关闭:turtle.done()
程序运行结果:
可以插函数。turtle.setup(700,700,100,100)#setup()设置窗体大小,后两个参数可选,该函数也不是必须的
turtle.speed(10)#设置画笔移到速度,参数值为0-10,数字越大,速度越大
turtle.pensize(10)#设置画笔尺寸大小
turtle.pencolor(‘green‘)#设置画笔颜色
turtle.penup()#将画笔抬起(抬起时移到画笔将不会在画布留下痕迹)
turtle.goto(0,190)#将画笔移到(x,y)
turtle.pendown()#将画笔落下
turtle.circle(80,360)#画圆,半径为正表示圆心在画笔左边
import turtle
turtle.showturtle() #屏幕上显示出来海龟绘图,终端中会用到
turtle.penup() #抬起画笔,此时画笔的移动不会留下痕迹
turtle.pendown() #放下画笔,此时画笔的移动会留下痕迹
turtle.pensize(3) #笔粗为3
turtle.goto(-200,100) #将画笔移动到(-200,100)坐标
turtle.color("red") #设定画笔的颜色为红色
turtle.circle(100) #以当前画笔所在点为圆最下端开始画半径为100的圆
turtle.circle(100,steps=n) #绘制一个周长为100,的n边形
turtle.forward(200) #将画笔前进200
turtle.backward(100) #将比后退100
turtle.right(70) #将画笔箭头的方向向右移70度
turtle.left(90) #将画笔箭头的方向向左移90度
turtle.stamp() #复制当前图形
turtle.write("hello,小朋友",font=('宋体',20,"normal")) #添加括号里的字符,font设置字符字体,大小以及作用
turtle.reste() #重置
turtle.hideturtle() #将画笔隐藏
turtle.done() #把所绘图显示出来,不关闭绘图软件
给绘制的图形填充颜色
turtle.begin_fill()
turtle.circle(100)
turtle.color("yellow")
turtle.end_fill()
1
2
3
4
例:画出奥运五环
import turtle
turtle.color("blue")
turtle.circle(100)
turtle.penup()
turtle.goto(-200,0)
turtle.pendown()
turtle.color("red")
turtle.circle(100)
turtle.penup()
turtle.goto(200,0)
turtle.color("yellow")
turtle.pendown()
turtle.circle(100)
turtle.penup()
turtle.goto(-100,-100)
turtle.color("black")
turtle.pendown()
turtle.circle(100)
turtle.penup()
turtle.goto(100,-100)
turtle.color("black")
turtle.pendown()
turtle.circle(100)
turtle.done()
设置画笔朝向的函数:一、库引用与import 1、库引用(扩充Python程序功能的方式) (1)使用import保留字完成,采用.()编码风格 设置画笔朝向的函数:二、turtle画笔控制函数 1、画笔操作后一直有效,一般成对出现 turtle.penup()(别名:turtle.pu()) 抬起画笔,海龟在飞行 turtle.pendown()(别名:turtle.pd)) 落下画笔,海龟在爬行 2、画笔设置后一直有效,直至下次重新设置 turtle.pensize(width)(别名:turtle.width(width)) 画笔宽度,海龟的腰围 turtle.pencolor(color)(color为颜色字符串或r,g,b值) 画笔颜色,海龟在涂装 三、turtle运动控制函数 控制海龟行进 1、走直线 turtle.forward(d)(别名:turtle.fd(d)) 向前行进,海龟走直线 d:行进距离,可以为负数 2、走曲线 turtle.circle(r, extent=None) 根据半径r绘制extent角度的弧形 r:默认圆心在海龟左侧r距离的位置 extent:绘制角度,默认是360度整圆 四、turtle方向控制函数 控制海龟面对的方向,并不实际的行动 1、绝对角度 turtle.setheading(angle)(别名turtle.seth(angle)) 改变行进的方向,海龟走角度 angle:改变行进方向,海龟走角度 2、海龟角度 turtle.left(angle) 海龟向左转 turtle.right(angle) 海龟向右转 angle:在海龟当前行进方向上旋转的角度 import .() import turtle turtle.setup(650, 350, 200, 200) turtle.penup() turtle.fd(-250) turtle.pendown() turtle.pensize(25) turtle.pencolor(”purple”) turtle.seth(-40) for i in range(4): turtle.circle(40,80) turtle.circle(-40,80) turtle.circle(40,80/2) turtle.fd(40) turtle.circle(16,180) turtle.fd(40 * 2/3) turtle.done() (2)使用from和import保留字共同完成 fromimport fromimport* () from turtle import* setup(650, 350, 200, 200) penup() fd(-250) pendown() pensize(25) pencolor(”purple”) seth(-40) for i in range(4): circle(40,80) circle(-40,80) circle(40,80/2) fd(40) circle(16,180) fd(40 * 2/3) done() import更多用法 两种方法的比较 1.第一种方法不会出现函数重名问题 2.第二种会出现
利用python中的 turtle (海龟绘图)模块提供的函数绘制直线 turtle.penup(): 画笔抬起
turtle.color(): 设置颜色
turtle.goto(): 画笔移动到下一目标
turtle.pendown(): 画笔落下