Turtle 库的方法及应用

Turtle库是Python用于图像绘制的工具,通过控制画笔的移动和颜色来创作图形。本文介绍了如何使用screensize()和setup()设置画布,调整画笔pensize()和pencolor(),以及控制画笔移动速度。并提供了五角星和爱心的绘制实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Turtle库是Python中一个绘制图像的函数库,可以用其中的函数绘制各种图像。

画布

turtle.screensize(width,height,''color'')  三个参数,前两个确定画布的大小,第三个确定画布的颜色

turtle.screensize() 无参时,默认画布大小为400*300  颜色为白色。

turtle.setup(width=0.5, height=0.75, startx=None, starty=None),该函数设置的是运行窗口的大小和位置

参数:width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例,(startx, starty): 这一坐标表示矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心。

小海龟的出生点是(0,0) 方向向右

画笔

小海龟的在画布上的绘画就想我们拿笔在画布上画画一样,这里有一些画笔的基础函数

turtle.pensize(x)    设置的是笔的宽度,可以类比成一下2B,4B这样的铅笔

#例如

turtle.pensize(5)

#此时的笔宽为5个像素

turtle.pencolor(‘color’)    设置的是笔的颜色

turtle.pencolor('red')

#笔的颜色为红色

turtle.speed(x)   设置的是挥笔的速度,也就是海龟的移动速度, x是0到10的整数,速度从慢到快

绘画

turtle 库里有许多移动指令,这些移动指令都会产生笔迹,可以用来绘画.

移动指令

turtle.forward(d)可以写成turtle.fd(d),向当前方向前进d像素
turtle.backward(d)可以写成turtle.bk(d),向当前方向的反方向前进d像素
turtle.right(r)向右偏转r度      例如turtle.right(45)   向右偏转45度
turtle.left(r)向左偏转r度      例如turtle.right(45)   向左偏转45度
turtle.setheading(r)可以写成turtle.seth(r),将海龟的指向r方向 ,在直角坐标系中.例如turtle.seth(180)将海龟方向设置为x轴的负方向.
turtle.sety(d)

将海龟在y方向移动d像素   

turtle.setx(d)将海龟在x方向移动d像素   
turtle.goto(x,y)将海龟移动到(x,y)             
turtle.penup()将笔抬起,其后的移动指令将不再有笔迹
turtle.pendown()与penup()合用,落笔.其后的移动指令有笔迹
turtle.home()海龟回到原点.
turtle.circle(radius,extent=None)根据半径radius绘制extent角度的弧形

画笔指令

turtle.dot(size,'color')设置笔点(海龟)的大小及颜色
turtle.fillcolor('color')填充颜色
turtle.color('color1','color2')同时设置pencolor和 fillcolor         pencolor=color1     ,fillcolor  =color2
turtle.begin_fill()开始填充颜色
turtle.end_fill()结束填充颜色
turtle.hideturtle()可以写成turtle.ht()隐藏海龟,
turtle.showturtle()可以写成turtle.st()显示海龟

turtle.shape('shape')

shape=''arrow''小箭头''turtle”海龟 “circle”圆形 “square”方形 “triangle”三角形 “classic”箭头

 

实例

五角星

import turtle
turtle.screensize(800,800,'red')
t=turtle.Pen()
t.color('white','red')#同时设置pencolor和fillcolor
t.speed(2)
t.fillcolor('black')
t.begin_fill()
t.forward(200)
t.left(144)
t.forward(200)
t.left(144)
t.forward(200)
t.left(144)
t.forward(200)
t.left(144)
t.forward(200)
t.end_fill()


 

爱心

from turtle import *
color('red','pink')
begin_fill()
left(135)
fd(100)
right(180)
circle(50,-180)
left(90)
circle(50,-180)
right(180)
fd(100)
end_fill()
hideturtle()
done()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值