Python 海龟画图(Turtle)命令大全

移动和绘制

forward() | fd()

使用语法:

​​turtle.forward(距离)​​

​​turtle.fd(距离)​​

参数说明: 距离 一个数字 (整数 或者 浮点)

(注:单位是像素)

代码示例:

import turtle

turtle.forward(200)

效果:

backward () | bk() | back()

使用语法:

​​turtle. backward (距离)​​

​​turtle. back (距离)​​

turtle. bk (距离)​​

参数说明: 一个数字 (整数 或者 浮点)

(注:单位是像素)

使用说明:

海龟后退指定的距离,方向与海龟的朝向相反。不改变海龟的朝向。

代码示例:

import turtle

turtle.backward(200)

效果

right () | rt()

使用语法:

turtle.right(角度)​​

​​turtle.rt(角度)​​

参数说明: 一个数值 (整型或浮点型)

(注:单位是角度)

使用说明:

海龟右转 angle 个单位。(单位默认为角度,但可通过degrees()和radians()函数改变设置。) 角度的正负由海龟模式确定

代码示例:

import turtle

turtle.right(60)

turtle.forward(200)

效果

left () | lt()

使用语法:

turtle.left(角度)​​

​​turtle.lt(角度)​​

参数说明: 一个数值 (整型或浮点型)

(注:单位是角度)

使用说明:

海龟左转角度个单位。(单位默认为角度,但可通过degrees()和radians()函数改变设置。) 角度的正负由海龟模式确定

代码示例:

import turtle

turtle. left(60)

turtle.forward(200)

效果

goto () | setpos () | setposition()

使用语法:

turtle.goto(x坐标,y坐标)​​

​​turtle.setpos(x坐标,y坐标)​​

turtle.setposition(x坐标,y坐标)​​

参数说明: x坐标: 一个数值或数值对/向量

y坐标:一个数值或None

使用说明:

在turtle 绘制的区域,是一个2D平面,这个平面由坐标定位,在turtle中使用pos表示坐标,初始位置为(0,0),使用goto传入坐标将会跳转至该坐标点并且绘制;

代码示例:

import turtle

turtle.goto(200,100)

效果

setx()

使用语法:

turtle.setx(x坐标)​​

参数说明: x坐标。

使用说明:

设置海龟的横坐标为 x,纵坐标保持不变。

代码示例:

import turtle

turtle.setx(200)

效果

sety()

使用语法:

turtle.sety(y坐标)​​

参数说明: y坐标。

使用说明:

设置海龟的纵坐标为 y,横坐标保持不变。

代码示例:

import turtle

turtle.sety(200)

效果

setheading() | seth()

使用语法:

turtle. setheading(角度)​​

turtle. seth(角度)​​

参数说明: 小乌龟朝向的角度。

使用说明:

设置海龟的朝向。

代码示例:

import turtle

turtle.setheading(90)

效果

home()

使用语法:

turtle. home()​​

参数说明: 无。

使用说明:

将乌龟移动到原点坐标(0,0),并将其朝向设置为起始方向(右,即0度方向)。

代码示例:

import turtle

turtle.setx(100)

turtle.setheading(90)

turtle.home()

效果

circle()

使用语法:

turtle. circle(半径,角度,阶梯)​​

参数说明: 半径:一个数值。角度:一个数值或None。阶梯:一个整型数据或None。

使用说明:

绘制一个指定半径的圆。角度参数为一个夹角,用来决定绘制圆的一部分。如未指定角度则绘制整个圆。如果不是画完整圆周,则以当前画笔位置为一个端点绘制圆弧。如果角度为正值则朝逆时针方向绘制圆弧,否则朝顺时针方向。

圆实际是以其内切正多边形来近似表示的,其边的数量由阶梯参数指定。如果未指定边数则会自动确定。此方法也可用来绘制正多边形。

代码示例:

import turtle

turtle.circle(100,180)

效果

dot()

使用语法:

turtle. dot(直径,颜色)​​

参数说明: 直径:一个大于等于1的整型数据或None。颜色:一个颜色字符串或颜色数值元组。

使用说明:

绘制一个直径为“直径参数”,颜色为“颜色参数”的圆点。如果直径未指定,则直径取pensize+4 和 2*pensize 中的较大值。

代码示例:

import turtle

turtle.dot(100,'red')

效果

stamp()

使用语法:

turtle. stamp()​​

参数说明: 无。

使用说明:

在海龟当前位置印制一个海龟形状。返回该印章的 stamp_id,印章可以通过调用 clearstamp(stamp_id) 来删除。

代码示例:

import turtle

turtle.color("blue")

turtle.stamp()

turtle.color('red')

turtle.fd(50)

效果

clearstamp ()

使用语法:

turtle. clearstamp(stampid)​​

参数说明: 一个整型数,必须是之前 stamp() 调用的返回值。

使用说明:

删除 stampid 指定的印章。

代码示例:

import turtle

turtle.position()

turtle.color("blue")

astamp = turtle.stamp()

turtle.fd(50)

turtle.position()

turtle.clearstamp(astamp)

turtle.position()

效果

clearstamps ()

使用语法:

turtle. clearstamps(n=None)​​

参数说明: 一个整型数,必须是之前 stamp() 调用的返回值。

使用说明:

删除全部或前/后 n 个海龟印章。如果 n 为 None 则删除全部印章,如果 n > 0 则删除前 n 个印章,否则如果 n < 0 则删除后 n 个印章。

代码示例:

import turtle

turtle.stamp();

turtle.fd(30)

turtle.stamp();

turtle.fd(30)

turtle.stamp();

turtle.fd(30)

turtle.stamp();

turtle.fd(30)

turtle.stamp();

turtle.fd(30)

turtle.stamp();

turtle.fd(30)

turtle.stamp();

turtle.fd(30)

turtle.stamp();

turtle.fd(30)

turtle.clearstamps(2)

turtle.clearstamps(-2)

turtle.clearstamps()

效果

使用语法:

turtle. undo()​​

参数说明: 无。

使用说明:

撤消 (或连续撤消) 最近的一个 (或多个) 海龟动作。可撤消的次数由撤消缓冲区的大小决定。

代码示例:

import turtle

turtle.fd(50);

turtle.lt(80)

turtle.undo()

turtle.undo()

效果

speed()

使用语法:

turtle.speed(速度)​​

参数说明: 一个 0..10 范围内的整型数或速度字符串。

使用说明:

设置海龟移动的速度为 0..10 表示的整型数值。如未指定参数则返回当前速度。

如果输入数值大于 10 或小于 0.5 则速度设为 0。速度字符串与速度值的对应关系如下:

"fastest": 0 最快

"fast": 10 快

"normal": 6 正常

"slow": 3 慢

"slowest": 1 最慢

速度值从 1 到 10,画线和海龟转向的动画效果逐级加快。

代码示例:

import turtle

turtle.speed(0)

turtle.left(30)

turtle.forward(100)

turtle.speed(1)

turtle.left(30)

turtle.forward(100)

效果

获取海龟的状态

position() | pos()

使用语法:

turtle.position()

turtle.pos()​​

参数说明: 无。

使用说明:

返回海龟当前的坐标 (x,y)

代码示例:

import turtle

turtle.pos()

效果

towards()

使用语法:

turtle.towards(x,y=None)

参数说明: x坐标:一个数值或一个海龟实例。y坐标:一个数值

使用说明:

返回从海龟位置到由 x、y 指定的位置的线与海龟的起始方向之间的角度。

代码示例:

import turtle

ang=turtle.towards(100,0)

print(ang)

ang=turtle.towards(0,100)

print(ang)

ang=turtle.towards(-100,0)

print(ang)

ang=turtle.towards(0,-100)

print(ang)

效果

xcor()

使用语法:

turtle.xcor()

参数说明: 无。

使用说明:

返回海龟的x坐标。

代码示例:

import turtle

turtle.goto(100,100)

print(turtle.xcor())

效果

ycor()

使用语法:

turtle.ycor()

参数说明: 无。

使用说明:

返回海龟的y坐标。

代码示例:

import turtle

turtle.goto(100,100)

print(turtle.ycor())

效果

heading()

使用语法:

turtle.heading()

参数说明: 无。

使用说明:

返回海龟当前的朝向。

代码示例:

import turtle

turtle.home()

turtle.left(67)

print(turtle.heading())

效果

distance()

使用语法:

turtle.distance(x,y=None)

参数说明: x:一个数值或数值对,或一个海龟实例。y:如果参数x为数值,y为一个数值,否则为None。

使用说明:

返回海龟位置到坐标的距离,或另一个海龟位置的距离。

代码示例:

import turtle

turtle.home()

print(turtle.distance(100,0))

joe = turtle.Turtle()

joe.forward(200)

print(turtle.distance(joe))

效果

设置与度量单位

degrees()

使用语法:

turtle.degrees(fullcircle=360.0)

参数说明: fullcircle:数值。

使用说明:

设置角度的度量单位,即设置一个圆周为多少 "度"。默认值为 360 度。

代码示例:

import turtle

turtle.home()

turtle.left(90)

print(turtle.heading())

turtle.degrees(400.0)

print(turtle.heading())

turtle.degrees(360)

print(turtle.heading())

效果

radians()

使用语法:

turtle. radians()

参数说明: 无。

使用说明:

设置角度的度量单位为弧度。其值等于 degrees(2*math.pi)。

代码示例:

import turtle

turtle.home()

turtle.left(90)

turtle.heading()

turtle.radians()

turtle.heading()

效果

绘图状态

pendown () | pd() | down()

使用语法:

turtle.pendown()

turtle.pd()

turtle.down()

参数说明:无。

使用说明:

落笔,移动时画线。

代码示例:

import turtle

turtle.pendown()

效果

penup () | pu() | up()

使用语法:

turtle.penup()

turtle.pu()

turtle.up()

参数说明:无。

使用说明:

抬笔,移动时不画线。

代码示例:

import turtle

turtle.penup()

效果

pensize() | width()

使用语法:

turtle.pensize(width=None)

turtle.width(width=None)

参数说明:width:画笔粗细。

使用说明:

设置画笔粗细。

代码示例:

import turtle

turtle.pensize()

turtle.goto(100,100)

turtle.pensize(10)

turtle.goto(200,200)

效果

pen()

使用语法:

turtle.pen(pen=None,**pendict)

参数说明:pen: 一个包含部分或全部下列键的字典。pendict: 一个或多个以下列键为关键字的关键字参数。

"shown": True/False

"pendown": True/False

"pencolor": 颜色字符串或颜色元组

"fillcolor": 颜色字符串或颜色元组

"pensize": 正数值

"speed": 0..10 范围内的数值

"resizemode": "auto" 或 "user" 或 "noresize"

"stretchfactor": (正数值, 正数值)

"outline": 正数值

"tilt": 数值

使用说明:

用来返回或设置笔的属性。

代码示例:

import turtle

turtle.pen(fillcolor="black", pencolor="red", pensize=10)

print(sorted(turtle.pen().items()))

效果

isdown ()

使用语法:

turtle. isdown()

参数说明:无。

使用说明:

如果画笔落下返回 True,如果画笔抬起返回 False。

代码示例:

import turtle

turtle.penup()

print(turtle.isdown())

turtle.pendown()

print(turtle.isdown())

效果

颜色控制

pencolor()

使用语法:

turtle. pencolor(*args)

参数说明:见使用说明。

使用说明:

pencolor可传参与不传参:

pencolor():不传参返回当前颜色的设置

pencolor(colorstring):可以传入字符串设置颜色值

pencolor((r, g, b)):传入一个元组值进行设置

pencolor(r, g, b):直接赋予r、g、b值

代码示例:

import turtle

print(turtle.colormode(255))

turtle.pencolor('red')

#tup=(100,152,256)

#turtle.pencolor(tup)

turtle.pencolor(100,152,255)

print(turtle.pencolor())

效果

fillcolor()

使用语法:

turtle. fillcolor(*args)

参数说明:见使用说明。

使用说明:

fillcolor可传参与不传参:

fillcolor():不传参返回当前颜色的设置

fillcolor(colorstring):可以传入字符串设置颜色值

fillcolor((r, g, b)):传入一个元组值进行设置

fillcolor(r, g, b):直接赋予r、g、b值

代码示例:

import turtle

print(turtle.colormode(255))

turtle.fillcolor('red')

#tup=(100,152,256)

#turtle.pencolor(tup)

turtle.fillcolor(100,152,255)

print(turtle.fillcolor())

效果

color()

使用语法:

turtle. color(*args)

参数说明:见使用说明。

使用说明:

color可传参与不传参:

color():不传参返回当前颜色的设置

color(colorstring):可以传入字符串设置颜色值

color(colorstring), color((r,g,b)):传入2个rgb值一个设置turtle颜色一个设置绘制线条颜色

color(colorstring1, colorstring2):传入2个字符串值一个设置turtle颜色一个设置绘制线条颜色

代码示例:

import turtle

turtle.colormode(255)

print(turtle.color())

turtle.color('red','black')

print(turtle.color())

turtle.color('#285078','#a0c8f0')

print(turtle.color())

turtle.color((100,100,100))

print(turtle.color())

turtle.color(200,200,200)

print(turtle.color())

效果

填充

filling()

使用语法:

turtle.filling()

参数说明:无。

使用说明:

返回填充状态 (填充为 True,否则为 False)。

代码示例:

import turtle

print(turtle.filling())

效果

begin_fill()

使用语法:

turtle. begin_fill()

参数说明:无。

使用说明:

开始填充颜色。

代码示例:

import turtle

turtle.begin_fill()

效果

end_fill()

使用语法:

turtle. end_fill()

参数说明:无。

使用说明:

结束填充颜色。

代码示例:

import turtle

turtle.color("black", "red")

turtle.begin_fill()

turtle.circle(100)

turtle.end_fill()

效果

更多绘图控制

reset() | resetscreen()

使用语法:

turtle. reset()

turtle. resetscreen()

参数说明:无。

使用说明:

从屏幕中删除海龟的绘图,海龟回到原点并设置所有变量为默认值。

代码示例:

import turtle

turtle.goto(0,-22)

turtle.left(100)

turtle.position()

turtle.heading()

turtle.reset()

turtle.position()

turtle.heading()

效果

clear() | clearscreen()

使用语法:

turtle. clear()

turtle. clearscreen()

参数说明:无。

使用说明:

清除屏幕绘制线条。并不影响turtle位置。

代码示例:

import turtle

turtle.circle(100,180)

turtle.clear()

效果

screensize ()

使用语法:

turtle.screensize(canvwidth=None, canvheight=None, bg=None)

参数说明:

canvwidth:正整型数,以像素表示画布的新宽度值

canvheight:正整型数,以像素表示画面的新高度值

bg:颜色字符串或颜色元组,新的背景颜色。

使用说明:

如未指定任何参数,则返回当前的 (canvaswidth, canvasheight)。否则改变作为海龟绘图场所的画布大小。不改变绘图窗口。要观察画布的隐藏区域,可以使用滚动条。通过此方法可以令之前绘制于画布之外的图形变为可见。

代码示例:

import turtle

turtle.screensize(2000,1500)

效果

write()

使用语法:

turtle. write()

参数说明: arg:要输出的文本

move:True/False

align:字符串 "left", "center" 或 "right"

font: 一个三元组 (fontname, fontsize, fonttype)

使用说明:

文本输出。

代码示例:

import turtle

turtle.goto(0,0)

turtle.write("python编程课", False, align="left", font=("Arial", 8, "normal"))

turtle.goto(0,100)

turtle.write("python编程课", True, align="center", font=("楷体", 8, "normal"))

turtle.goto(0,200)

turtle.write("python编程课", False, align="right", font=("隶书", 8, "normal"))

效果

可见性

hideturtle() | ht()

使用语法:

turtle. hideturtle()

turtle.ht()

参数说明:无。

使用说明:

隐藏海龟

代码示例:

import turtle

turtle.goto(0,0)

turtle.hideturtle()

效果

showturtle() | st()

使用语法:

turtle. showturtle()

turtle.st()

参数说明:无。

使用说明:

显示海龟

代码示例:

import turtle

turtle.hideturtle()

turtle.showturtle()

效果

isvisible ()

使用语法:

turtle. isvisible()

参数说明:无。

使用说明:

如果海龟显示返回 True,如果海龟隐藏返回 False。

代码示例:

import turtle

turtle. isvisible()

效果

可见性

shape()

使用语法:

turtle. shape(name=None)

参数说明: name:有效的形状名称。

使用说明:

shape设置为具有给定名称的形状,如果未指定名称,则返回当前形状的名称。名称为的形状必须存在于TurtleScreen的形状字典中。默认有以下多边形形状:"arrow", "turtle", "circle", "square", "triangle", "classic"。设置成什么turtle就会变成什么形状。

代码示例:

import turtle

print(turtle.shape())

turtle.shape('turtle')

效果

resizemode()

使用语法:

turtle.resizemode(rmode=None)

参数说明: rmode:字符串 "auto", "user", "noresize" 其中之一

使用说明:

设置大小调整模式为以下值之一: "auto", "user", "noresize"。如未指定 rmode 则返回当前的大小调整模式。不同的大小调整模式的效果如下:

"auto": 根据画笔粗细值调整海龟的外观。

"user": 根据拉伸因子和轮廓宽度 (outline) 值调整海龟的外观,两者是由 shapesize() 设置的。

"noresize": 不调整海龟的外观大小。

代码示例:

import turtle

turtle.width(100)

#turtle.resizemode("user")

turtle.resizemode("auto")

#turtle.resizemode("noresize")

效果

shapesize() | turtlesize()

使用语法:

turtle.shapesize(stretch_wid=None, stretch_len=None, outline=None)

turtle.turtlesize(stretch_wid=None, stretch_len=None, outline=None)

参数说明: stretch_wid:正数值。stretch_len:正数值。outline:正数值。

使用说明:

返回或设置画笔的属性 x/y-拉伸因子和/或轮廓。设置大小调整模式为 "user"。当且仅当大小调整模式设为 "user" 时海龟会基于其拉伸因子调整外观: stretch_wid 为垂直于其朝向的宽度拉伸因子,stretch_len 为平等于其朝向的长度拉伸因子,决定形状轮廓线的粗细。

代码示例:

import turtle

import time

turtle.resizemode("user")

turtle.shapesize(5, 5, 5)

time.sleep(2)

turtle.shapesize(10, 5, 5)

time.sleep(2)

turtle.shapesize(5, 5, 5)

time.sleep(2)

turtle.shapesize(5, 10, 5)

time.sleep(2)

turtle.shapesize(5, 5, 5)

time.sleep(2)

turtle.shapesize(5, 5, 10)

time.sleep(2)

效果

shearfactor()

使用语法:

turtle.shearfactor(shear=None)

参数说明: shear:数值 (可选)。

使用说明:

设置或返回当前的剪切因子。根据 share 指定的剪切因子即剪切角度的切线来剪切海龟形状。不 改变海龟的朝向 (移动方向)。如未指定 shear 参数: 返回当前的剪切因子即剪切角度的切线,与海龟朝向平行的线条将被剪切。

代码示例:

import turtle

import time

turtle.shape("circle")

turtle.shapesize(5,2)

time.sleep(1)

turtle.shearfactor(0.5)

time.sleep(1)

turtle.shearfactor(3)

效果

tilt()

使用语法:

turtle.tilt(angle)

参数说明: angle:一个数值

使用说明:

海龟形状自其当前的倾角转动 angle 指定的角度,但不改变海龟的朝向 (移动方向)。

代码示例:

import turtle

import time

turtle.tilt(0)

time.sleep(1)

turtle.fd(100)

time.sleep(1)

turtle.tilt(90)

turtle.fd(100)

效果

settiltangle()

使用语法:

turtle.settiltangle(angle)

参数说明: angle:一个数值

使用说明:

旋转海龟形状使其指向angle指定的方向,忽略其当前的倾角,不改变海龟的朝向 (移动方向)。

代码示例:

import turtle

import time

turtle.tilt(0)

time.sleep(1)

turtle.fd(30)

time.sleep(1)

turtle.tilt(90)

turtle.fd(30)

time.sleep(1)

turtle.settiltangle(45)

time.sleep(1)

turtle.fd(30)

time.sleep(1)

turtle.settiltangle(90)

turtle.fd(30)

效果

tiltangle()

使用语法:

turtle.tiltangle(angle=None)

参数说明: angle:一个数值

使用说明:

设置或返回当前的倾角。如果指定 angle 则旋转海龟形状使其指向 angle 指定的方向,忽略其当前的倾角。不 改变海龟的朝向 (移动方向)。如果未指定 angle: 返回当前的倾角,即海龟形状的方向和海龟朝向 (移动方向) 之间的夹角。

代码示例:

import turtle

turtle.tilt(45)

turtle.tiltangle(90)

print(turtle.tiltangle())

效果

事件

onclick()

使用语法:

turtle.onclick(fun, btn=1, add=None)

参数说明:

fun : 一个函数,调用时将传入两个参数表示在画布上点击的坐标。

btn : 鼠标按钮编号,默认值为 1 (鼠标左键)。

add :True 或 False如为True 则将添加一个新绑定,否则将取代先前的绑定

使用说明:

鼠标单单击事件。

代码示例:

import turtle

def fxn(x, y):

turtle.goto(x, y)

turtle.write(str(x)+","+str(y))

def fxn2(x, y):

turtle.goto(-x, -y)

turtle.write(str(x)+","+str(y))

turtle.Screen().onclick(fxn,1)

turtle.Screen().onclick(fxn2,1,True)

效果

onrelease()

使用语法:

turtle. onrelease(fun, btn=1, add=None)

参数说明:

fun : 一个函数,调用时将传入两个参数表示在画布上点击的坐标。

btn : 鼠标按钮编号,默认值为 1 (鼠标左键)。

add :True 或 False如为True 则将添加一个新绑定,否则将取代先前的绑定

使用说明:

鼠标释放事件。

代码示例:

import turtle

def fxn1(x,y):

turtle.fillcolor("blue")

def fxn2(x,y):

turtle.fillcolor("white")

sc=turtle.Screen()

sc.setup(400,300)

turtle.shape("turtle")

turtle.turtlesize(2)

turtle.speed(1)

turtle.onclick(fxn1)

turtle.onrelease(fxn2)

效果

ondrag()

使用语法:

turtle. ondrag(fun, btn=1, add=None)

参数说明:

fun : 一个函数,调用时将传入两个参数表示在画布上点击的坐标。

btn : 鼠标按钮编号,默认值为 1 (鼠标左键)。

add :True 或 False如为True 则将添加一个新绑定,否则将取代先前的绑定

使用说明:

鼠标拖动事件。

代码示例:

import turtle

def fxn(x, y):

turtle.ondrag(None)

turtle.setheading(turtle.towards(x, y))

turtle.goto(x, y)

turtle.ondrag(fxn)

turtle.speed(10)

sc = turtle.Screen()

sc.setup(400, 300)

turtle.ondrag(fxn)

sc.mainloop()

效果

事件特殊海龟方法

begin_poly() | end_poly() | get_poly()

使用语法:

turtle.begin_poly()

turtle.end_poly()

turtle.get_poly()

参数说明: 无

使用说明:

turtle.begin_poly()

开始记录多边形的顶点。当前海龟位置为多边形的第一个顶点。

turtle.end_poly()

停止记录多边形的顶点。当前海龟位置为多边形的最后一个顶点。它将连线到第一个顶点。

turtle.get_poly()

返回最新记录的多边形。

代码示例:

import turtle

turtle.home()

turtle.begin_poly()

turtle.fd(100)

turtle.left(90)

turtle.fd(30)

turtle.left(90)

turtle.fd(50)

turtle.end_poly()

p = turtle.get_poly()

print(p)

效果

clone()

使用语法:

turtle.clone()

参数说明: 无

使用说明:

克隆

代码示例:

import turtle

mick = turtle.Turtle()

joe = mick.clone()

mick.goto(111,0)

joe.goto(0,111)

效果

getturtle() | getpen()

使用语法:

turtle. getturtle()

turtle. getpen()

参数说明: 无

使用说明:

返回当前turtle的实例

代码示例:

import turtle

import time

pet = turtle.getturtle()

pet.fd(50)

time.sleep(1)

turtle.fd(-50)

效果

getscreen()

使用语法:

turtle. getscreen()

参数说明: 无

使用说明:

返回作为海龟绘图场所的 TurtleScreen 类对象。该对象将可调用 TurtleScreen 方法。

代码示例:

import turtle

sc=turtle.getscreen()

print(sc)

效果

setundobuffer()

使用语法:

turtle. setundobuffer(size)

参数说明: size:大小。

使用说明:

设置缓冲区大小。使用undo撤销缓冲区turtle的动作数,如果size为None则禁用撤销。

代码示例:

import turtle

turtle.setundobuffer(6)

效果

undobufferentries()

使用语法:

turtle. undobufferentries()

参数说明: 无。

使用说明:

输出缓冲区中的动作数

代码示例:

import turtle

turtle.fd(10)

turtle.left(20)

turtle.fd(30)

turtle.fd(-5)

print(turtle.undobufferentries())

效果

窗口控制

bgcolor()

使用语法:

turtle.bgcolor(*args)

参数说明: args:一个颜色字符串或三个取值范围 0..colormode 内的数值或一个取值范围相同的数值3元组

使用说明:

设置或返回 TurtleScreen 的背景颜色。

代码示例:

import turtle

turtle.bgcolor("red")

效果

bgpic()

使用语法:

turtle.bgpic(picname=None)

参数说明:

picname:不传则返回背景图片文件名,传入参数则设置背景图片,可传入文件名或路径。传入。picname 为 "nopic",则删除当前背景图片。

使用说明:

设置背景图片

代码示例:

import turtle

turtle.bgpic("logo.png")

效果

clearscreen()

使用语法:

turtle. clearscreen()

参数说明: 无

使用说明:

从中删除所有海龟的全部绘图。将已清空的 TurtleScreen 重置为初始状态: 白色背景,无背景片,无事件绑定并启用追踪。

代码示例:

import turtle

import time

turtle.bgpic("logo.png")

turtle.fd(20)

turtle.left(20)

time.sleep(1)

turtle.clearscreen()

效果

https://pic1.zhimg.com/80/v2-b7b05f32a6569f7b9d9b3b935cbf97f8_720w.webp

setworldcoordinates()

使用语法:

turtle.setworldcoordinates(llx, lly, urx, ury)

参数说明:

llx:一个数值, 画布左下角的 x-坐标

lly:一个数值, 画布左下角的 y-坐标

urx:一个数值, 画面右上角的 x-坐标

ury:一个数值, 画布右上角的 y-坐标

使用说明:

自定义坐标系

代码示例:

import turtle

turtle.setworldcoordinates(-10,-10,10,10)

turtle.fd(10)

效果

动画控制

delay()

使用语法:

turtle.delay(delay=None)

参数说明: delay:正整型数

使用说明:

设置或返回以毫秒数表示的延迟值 delay。(这约等于连续两次画布刷新的间隔时间。) 绘图延迟越长,动画速度越慢。

代码示例:

import turtle

turtle.delay(100)

turtle.fd(200)

效果

tracer()

使用语法:

turtle.tracer(n=None, delay=None)

参数说明:n:非负整型数。delay:非负整型数

使用说明:

启用/禁用海龟动画并设置刷新图形的延迟时间。如果指定 n 值,则只有每第 n 次屏幕刷新会实际执行。(可被用来加速复杂图形的绘制。) 如果调用时不带参数,则返回当前保存的 n 值。第二个参数设置延迟值 (参见 delay())。

代码示例:

import turtle

turtle.tracer(1, 10)

dist = 2

v=5

for i in range(30):

turtle.fd(dist)

turtle.rt(90)

dist += v

turtle.pen(pencolor='red')

turtle.tracer(1, 10)

for i in range(30):

turtle.fd(dist)

turtle.rt(90)

dist += v

turtle.pen(pencolor='blue')

turtle.tracer(1, 10)

for i in range(30):

turtle.fd(dist)

turtle.rt(90)

dist += v

效果

update()

使用语法:

turtle.update()

参数说明:无。

使用说明:

执行一次 TurtleScreen 刷新。在禁用追踪时使用。

代码示例:

import turtle

turtle.tracer(False)

dist = 2

v=5

for i in range(30):

turtle.fd(dist)

turtle.rt(90)

dist += v

turtle.update()

效果

使用屏幕事件

listen()

使用语法:

turtle.listen(xdummy=None, ydummy=None)

参数说明: 无。

使用说明:

设置焦点到 TurtleScreen (以便接收按键事件)。使用两个 Dummy 参数以便能够传递 listen() 给 onclick 方法。

代码示例:

import turtle

def f():

turtle.fd(50)

turtle.lt(60)

turtle.listen()

turtle.onkey(f, "Up")

效果

onkey()

使用语法:

turtle.onkey(fun, key)

参数说明: fun:一个无参数的函数或 None。

key:一个字符串: 键 (例如 "a") 或键标 (例如 "space")。

使用说明:

绑定 fun 指定的函数到按键事件。如果 fun 值为 None,则移除事件绑定。注: 为了能够注册按键事件,TurtleScreen 必须得到焦点。(参见 method listen() 方法。)

代码示例:

import turtle

def f():

turtle.fd(50)

turtle.lt(60)

turtle.listen()

turtle.onkey(f, "Up")

效果

onkeyrelease()

使用语法:

turtle.onkeyrelease(fun, key)

参数说明: fun:一个无参数的函数或 None。

key:一个字符串: 键 (例如 "a") 或键标 (例如 "space")。

使用说明:

绑定 fun 指定的函数到按键释放事件。如果 fun 值为 None,则移除事件绑定。注: 为了能够注册按键事件,TurtleScreen 必须得到焦点。(参见 method listen() 方法。)

代码示例:

import turtle

def f():

turtle.fd(50)

turtle.lt(60)

turtle.listen()

turtle.onkeyrelease(f, "Up")

效果

onkeypress()

使用语法:

turtle. onkeypress(fun, key)

参数说明: fun:一个无参数的函数或 None。

key:一个字符串: 键 (例如 "a") 或键标 (例如 "space")。

使用说明:

绑定 fun 指定的函数到指定键的按下事件。如未指定键则绑定到任意键的按下事件。注: 为了能够注册按键事件,必须得到焦点。(参见 listen() 方法。)

代码示例:

import turtle

def f():

turtle.fd(50)

turtle.lt(60)

turtle.listen()

turtle.onkeypress(f, "Up")

效果

onclick() | onscreenclick()

使用语法:

turtle.onclick(fun, btn=1, add=None)

turtle.onscreenclick(fun, btn=1, add=None)

参数说明: fun :一个函数,调用时将传入两个参数表示在画布上点击的坐标。

btn: 鼠标按钮编号,默认值为 1 (鼠标左键)

add:True 或 False -- 如为 True 则将添加一个新绑定,否则将取代先前的绑定

使用说明:

绑定 fun 指定的函数到鼠标点击屏幕事件。如果 fun 值为 None,则移除现有的绑定。

代码示例:

import turtle

def fxn(x, y):

turtle.goto(x, y)

turtle.write(str(x)+","+str(y))

def fxn2(x, y):

turtle.goto(-x, -y)

turtle.write(str(x)+","+str(y))

turtle.Screen().onscreenclick(fxn,1)

turtle.Screen().onscreenclick(fxn2,1,True)

效果

ontimer()

使用语法:

turtle.ontimer(fun, t=0)

turtle.onscreenclick(fun, btn=1, add=None)

参数说明:

fun:一个无参数的函数

t:一个数值 >= 0

使用说明:

安装一个计时器,在 t 毫秒后调用 fun 函数。

代码示例:

import turtle

def f():

turtle.fd(200)

turtle.left(110)

turtle.ontimer(f,3000)

效果

mainloop() | done()

使用语法:

turtle.mainloop()

turtle.done()

参数说明: 无

使用说明:

开始事件循环 - 调用 Tkinter 的 mainloop 函数。必须作为一个海龟绘图程序的结束语句。如果一个脚本是在以 -n 模式 (无子进程) 启动的 IDLE 中运行时 不可 使用 - 用于实现海龟绘图的交互功能。

代码示例:

import turtle

turtle.goto(200,0)

turtle.mainloop()

效果

使用屏幕事件

textinput()

使用语法:

turtle.textinput(title, prompt)

参数说明:

title:字符串

prompt:字符串。

使用说明:

弹出一个对话框窗口用来输入一个字符串。形参 title 为对话框窗口的标题,prompt 为一条文本,通常用来提示要输入什么信息。返回输入的字符串。如果对话框被取消则返回 None。:

代码示例:

import turtle

print(turtle.textinput("建伟的少儿编程课", "Scratch入门到精通"))

效果

使用屏幕事件

numinput()

使用语法:

turtle.numinput(title, prompt, default=None, minval=None, maxval=None)

参数说明:

title:字符串

prompt:字符串

default:数值 (可选)

minval:数值 (可选)

maxval:数值 (可选)

使用说明:

弹出一个对话框窗口用来输入一个数值。title 为对话框窗口的标题,prompt 为一条文本,通常用来描述要输入的数值信息。default: 默认值, minval: 可输入的最小值, maxval: 可输入的最大值。输入数值的必须在指定的 minval .. maxval 范围之内,否则将给出一条提示,对话框保持打开等待修改。返回输入的数值。如果对话框被取消则返回 None。:

代码示例:

import turtle

turtle.numinput("这是标题", "这是问题:", 1000, minval=10, maxval=10000)

效果

设置与特殊方法

mode()

使用语法:

turtle.mode(mode=None)

参数说明:

mode:字符串 "standard", "logo" 或 "world" 其中之一

使用说明:

设置海龟模式 ("standard", "logo" 或 "world") 并执行重置。如未指定模式则返回当前的模式。

"standard" 模式与旧的 turtle 兼容。"logo" 模式与大部分 Logo 海龟绘图兼容。"world" 模式使用用户自定义的 "世界坐标系"。注意: 在此模式下,如果 x/y 单位比率不等于 1 则角度会显得扭曲。

模式

初始海龟朝向

正数角度

standard

朝右(东)

逆时针

logo

朝北(上)

顺时针

代码示例:

import turtle

import time

turtle.forward(100)

turtle.mode(mode='logo')

turtle.forward(100)

turtle.mode(mode='world')

turtle.forward(100)

turtle.setworldcoordinates(-500,-500,500,500)

效果

colormode()

使用语法:

turtle.colormode(cmode=None)

参数说明:

cmode:数值 1.0 或 255

使用说明:

返回颜色模式或将其设为 1.0 或 255。构成颜色三元组的 r, g, b 数值必须在 0..cmode 范围之内。

代码示例:

import turtle

turtle.colormode(1)

turtle.pencolor(0.5, 0.5, 0.5)

turtle.goto(100,0)

turtle.colormode()

turtle.colormode(255)

turtle.colormode()

turtle.pencolor(240,160,80)

turtle.goto(100,100)

效果

getcanvas()

使用语法:

turtle.getcanvas()

参数说明: 无。

使用说明:

返回此 TurtleScreen 的 Canvas 对象。供了解 Tkinter 的 Canvas 对象内部机理的人士使用。

代码示例:

import turtle

print(turtle.getcanvas())

效果

getshapes()

使用语法:

turtle. getshapes()

参数说明: 无。

使用说明:

返回所有当前可用海龟形状的列表。

代码示例:

import turtle

print(turtle.getshapes())

效果

register_shape() | turtle.addshape()

使用语法:

turtle.register_shape(name, shape=None)

turtle.addshape(name, shape=None)

参数说明: 无。

使用说明:

将一个海龟形状加入 TurtleScreen 的形状列表。只有这样注册过的形状才能通过执行 shape(shapename) 命令来使用

代码示例:

import turtle

turtle.begin_poly()

turtle.seth(-45)

turtle.circle(20, 90)

turtle.circle(10, 90)

turtle.circle(20, 90)

turtle.circle(10, 90)

turtle.end_poly()

pairs = turtle.get_poly()

turtle.register_shape("new_shape", pairs)

turtle.clearscreen()

turtle.shape("new_shape")

turtle.fillcolor("blue")

for i in range(50):

turtle.forward(5+2*i)

turtle.right(45)

效果

turtles()

使用语法:

turtle.turtles()

参数说明: 无。

使用说明:

返回屏幕上的海龟列表。

代码示例:

import turtle

turtle.begin_poly()

turtle.seth(-45)

turtle.circle(20, 90)

turtle.circle(10, 90)

turtle.circle(20, 90)

turtle.circle(10, 90)

turtle.end_poly()

pairs = turtle.get_poly()

turtle.register_shape("new_shape", pairs)

turtle.clearscreen()

turtle.shape("new_shape")

turtle.fillcolor("blue")

for i in range(50):

turtle.forward(5+2*i)

turtle.right(45)

print(turtle.turtles())

效果

window_height()

使用语法:

screen.window_height()

参数说明: 无。

使用说明:

返回海龟窗口的高度。

代码示例:

import turtle

print(turtle.window_height())

print(turtle.window_width())

效果

window_width()

使用语法:

screen. window_width()

参数说明: 无。

使用说明:

返回海龟窗口的宽度。

代码示例:

import turtle

print(turtle.window_height())

print(turtle.window_width())

效果

bye()

使用语法:

turtle.bye()

参数说明: 无。

使用说明:

关闭海龟绘图窗口。

代码示例:

import turtle

turtle.bye()

效果

exitonclick()

使用语法:

turtle.exitonclick()

参数说明: 无。

使用说明:

将 bye() 方法绑定到 Screen 上的鼠标点击事件。

代码示例:

import turtle

for i in range(3):

turtle.circle(40)

turtle.right(120)

turtle.exitonclick()

效果

setup()

使用语法:

turtle.setup(width=_CFG["width"],height=_CFG["height"], startx=_CFG["leftright"], starty=_CFG["topbottom"])

参数说明:

width:如为一个整型数值,表示大小为多少像素,如为一个浮点数值,则表示屏幕的占比;默认为屏幕的 50%

height:如为一个整型数值,表示高度为多少像素,如为一个浮点数值,则表示屏幕的占比;默认为屏幕的 75%

startx:如为正值,表示初始位置距离屏幕左边缘多少像素,负值表示距离右边缘,None 表示窗口水平居中

starty:如为正值,表示初始位置距离屏幕上边缘多少像素,负值表示距离下边缘,None 表示窗口垂直居中。

使用说明:

设置主窗口的大小和位置。默认参数值保存在配置字典中,可通过 turtle.cfg 文件进行修改。

代码示例:

import turtle

turtle.setup (width=200, height=200, startx=600, starty=400)

效果

title()

使用语法:

turtle.title(titlestring)

参数说明:

titlestring:一个字符串,显示为海龟绘图窗口的标题栏文本

使用说明:

设置海龟窗口标题为 titlestring 指定的文本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/706095.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式开发十五:STM32中断系统

STM32 中断非常强大&#xff0c;几乎每个外设都可以产生中断&#xff0c;因此这里我们单独来介绍它&#xff0c;为后面介绍外设中断做铺垫。 目录 一、中断的介绍 1.1 中断的概念 1.2 中断优先级: 1.3 中断的嵌套 1.4 内部中断和外部中断 1.5 中断响应和事件响应 1.6 …

【介绍下JSON,JSON是什么?】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

svn如何远程访问?

svn&#xff08;Subversion&#xff09;是一种版本控制系统&#xff0c;广泛应用于软件开发领域。它能够追踪文件和目录的变化&#xff0c;记录每个版本的修改内容&#xff0c;并允许多人协同开发。svn的远程访问功能允许开发人员可以在不同的地点访问和管理代码&#xff0c;提…

一看就会的AOP事务

文章目录 AOPAOP简介AOP简介和作用AOP的应用场景为什么要学习AOP AOP入门案例思路分析代码实现AOP中的核心概念 AOP工作流程AOP工作流程AOP核心概念在测试类中验证代理对象 AOP切入点表达式语法格式通配符书写技巧 AOP通知类型AOP通知分类AOP通知详解 AOP案例案例-测量业务层接…

springboot+vue+mybatis物业管理系统+PPT+论文+讲解+售后

快速发展的社会中&#xff0c;人们的生活水平都在提高&#xff0c;生活节奏也在逐渐加快。为了节省时间和提高工作效率&#xff0c;越来越多的人选择利用互联网进行线上打理各种事务&#xff0c;通过线上物业管理系统也就相继涌现。与此同时&#xff0c;人们开始接受方便的生活…

Nginx企业级负载均衡:技术详解系列(1)

你好呀&#xff0c;我是赵兴晨&#xff0c;文科程序员。 最近&#xff0c;我注意到关于Nginx的文章总是能吸引到异常多的流量。这让我意识到&#xff0c;或许大家对这个话题有着浓厚的兴趣。既然如此&#xff0c;我决定将更多关于Nginx的深度内容与大家分享。 在接下来的时间…

[数据集][目标检测]蕃茄核桃桔子龙眼青枣5种水果检测数据集VOC+YOLO格式270张5类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;270 标注数量(xml文件个数)&#xff1a;270 标注数量(txt文件个数)&#xff1a;270 标注类别…

C# .Net8 switch 的用法

在 .net 8中&#xff0c;switch 不需要再和传统的写法一样了&#xff0c;会更加的方便 创建一个 .net 8 控制台项目 switch 的写法没必要和以前一样 namespace SwitchTest {internal class Program{static void Main(string[] args){int day 3;var week day switch{1 > &…

html基础(全)

html简介 目录 什么是网页 什么是 HTML 常用浏览器 WebE标准的构成 基本语法概述 第一个HTML页面 文档类型声明标签 lang 语言种类 字符集 标题标签 段落和换行标签 文本格式化标签 div和span标签 图像标签和路径 超链接标签 表格的主要作用 表头单元格标签 列…

ACM实训冲刺第八天

【碎碎念】由于昨天做的题都有思路&#xff0c;加上今天有点疲惫&#xff0c;故今天先不复习了&#xff0c;直接开始今天的算法学习 Tokitsukaze and All Zero Sequence 问题 思路 读入测试用例数&#xff1a;首先读取一个整数t&#xff0c;表示接下来会有t组数据需要处理。遍…

【AI+agent智能助手】使用Dify新手小白也能分分钟构建属于自己的 AI 原生应用

最近有读者看了我这篇文章 【人工智能】字节版GPTs「扣子」coze免费使用chatGPT4模型操作步骤 &#xff0c; 私信我有没有本地私有化 智能体推荐。 这里推荐一款&#xff0c; Dify支持私有化部署&#xff0c;新手小白也能分分钟构建属于自己的 AI 原生应用。 官方地址&#…

异地组网群晖不能访问怎么办?

在日常使用群晖网络储存设备时&#xff0c;我们常常会遇到无法访问的情况&#xff0c;特别是在异地组网时。这个问题很常见&#xff0c;但也很让人困扰。本文将针对异地组网群晖无法访问的问题进行详细解答和分析。 异地组网的问题 在异地组网中&#xff0c;群晖设备无法访问的…