turtle方法汇总

2020-02-27  本文已影响0人  指向远方的灯塔
turtle.setheading(90)#海龟的朝向为90度即向上
turtle.setheading(-90)#海龟的朝向为-90度即向下
turtle.lt(45)#向左转45度
turtle.lt(-45)#向右转45度
turtle.rt(45) #向右转45度
turtle.rt(-90)#向左转90度
turtle.forward(100)#前进100像素
turtle.forward(-100)#后退100像素
turtle.backward(200)#画笔向绘制方向的相反方向移动200像素
turtle.backward(-200)#画笔向绘制方向的方向移动200像素
参数x(一个数字或者一个二维的数组)
参数y(一个数字或者为None)
如果y为None,x必须是一个二维的数组
turtle.setpos((20,80)) #移动到位置(20,80)
turtle.setposition(-120,20)#移动到位置(-120,20)
turtle.goto(60,30)#移动到位置(60,30)
turtle.goto(60,-30)#移动到位置(60,-30)
import turtle
turtle.penup()
turtle.setx(-200)
turtle.pendown()
turtle.left(90)
turtle.forward(100)
turtle.done()
[注意:在使用goto()和setx()、sety()的时候要记得先提笔,然后再移动,最后再落笔]
import turtle
turtle.penup()
turtle.sety(-200)
turtle.pendown()
turtle.left(90)
turtle.forward(100)
turtle.done()
turtle.home()

参数:
radius : 圆半径,数值为整型或者浮点型,为正数则逆时针画,为负数则顺时针画,方向随着轨迹的变化而变化

import turtle
turtle.circle(5.5)

extent : 一个角度,其值可以是整型、浮点型或者None,决定哪部分圆圈被绘制,不提供extent表示画完整的圆,值为正是沿着画笔方向画,值为负沿着画笔反方向画

import turtle
turtle.circle(100, 120)
turtle.done()
import turtle
turtle.circle(100, -120)
turtle.done()

steps:边数,其值为整型或者None,指定半径radius前提下,完成extent的角度时,分了几步

#逆时针方向半径为40画五边形(5步画接近整圆的图形)
turtle.circle(40, None, 5)
import turtle
turtle.dot(50, "blue")
turtle.done()
#让我们先看一下turtle.stamp()的作用
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
turtle.done()
#接下来,我们来看一下turtle.clearstamp(stamp_id)的作用
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
#删除拷贝的箭头形状(此处id最后一次复制的stamp_id)
turtle.clearstamp(stamp_id)
turtle.done()
#还可以这样实现
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
#检查stamp_id
print(stamp_id) #12
#删除拷贝的箭头形状(此处id最后一次复制的stamp_id)
turtle.clearstamp(12)
turtle.done()
turtle.clearstamp(stamp_id)的图
#最后我们再来看一下turtle.clearstamps(n)的作用
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
#删除前一个
turtle.clearstamps(1)#删除第一个拷贝的形状
turtle.done()
turtle.clearstamps(1)
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
#删除后一个
turtle.clearstamps(-1)#删除最后一个拷贝形状
turtle.done()
turtle.clearstamps(-1)
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
#全部删除
turtle.clearstamps()#删除全部拷贝形状
turtle.done()
turtle.clearstamps()
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
#不删除
turtle.clearstamps(0)
turtle.done()
turtle.clearstamps(0)
import turtle
#画笔颜色设为红色
turtle.color("red")
#定义一个颜色列表
color = ['blue', 'yellow', 'red', 'green', 'gray']
num = 0
while num < 5:
    #当前位置拷贝一份箭头形状,也就是在当前的位置留下一个箭头的形状
    stamp_id = turtle.stamp()
    #在这里我们为了识别方便改变一下画笔的颜色
    turtle.color(color[num])
    #前进100像素
    turtle.fd(100)
    num += 1
#不删除
turtle.clearstamps(0)
#一直撤销最后一个动作直到不可撤销
while turtle.undobufferentries():
    #撤销最后的一次动作
    turtle.undo()
turtle.done()

内置的速度字符串:
“fastest”:0
“fast”:10
“normal”:6
“slow”:3
“slowest”:1

import turtle
print(turtle.pos())#(0.00,0.00)

参数:
x:x可以是一个number或者一个二维的数组或者一个turtle instence(海龟实例)
y:x是一个number,y就是一个number;否则y为None

import turtle
turtle.goto(20, 20)
#移动后,位置为(20,20),两个向量分别是(20,20)点到(0,0)点的向量和(20,20)点到箭头当前方向的向量
angle = turtle.towards(0, 0)
print("两向量角度:", angle)#225.0

angle = turtle.towards((0, 0))
print("两向量角度:", angle)#225.0

turtle1 = turtle.Turtle()
turtle1.setpos(0, 0)
angle = turtle.towards(turtle1)
print("两向量角度:", angle)#225.0

turtle1 = turtle.Turtle()
turtle1.setpos(0, 0)
angle = turtle1.towards(turtle1)
print("两向量角度:", angle)#0.0

turtle2 = turtle.Turtle()
turtle2.setpos(50, 50)
angle = turtle1.towards(turtle2)
print("两向量角度:", angle) #45.0
import turtle
turtle.lt(50)
turtle.fd(100)
#打印箭头当前坐标
print(turtle.pos())  #(64.28,76.60)
print(round(turtle.xcor(), 5))#保留5位读取x坐标 64.27876
print(round(turtle.ycor(), 5))#保留5位读取y坐标 76.60444
import turtle
turtle.lt(50)
turtle.fd(100)
print(turtle.heading()) #50.0

参数:
x : x可以是一个number或一个二维数组,或者一个turtle instance(海龟实例)
y : x是一个number,y就是一个number,否则y为None

import turtle
turtle.home()
print(turtle.distance(30, 40))#距离为50.0
print(turtle.distance((30, 40)))#距离为50.0
joe = turtle.Turtle()
joe.setpos(30, 40)
print(turtle.distance(joe))#距离为50.0

turtle.radians():表示将一个完整圆的“度数”设置成2π,如果是360度的90度,那么此时的角度时π/2;

import turtle
turtle.home()
turtle.left(90)
print(turtle.heading())#90.0
turtle.degrees(400.0)#100.0
print(turtle.heading())#90.0
turtle.degrees(360)
print(turtle.heading())
turtle.radians()
print(turtle.heading())#1.5707963267948966
turtle.pu()
turtle.pd()
import turtle
#设置画笔的尺寸
turtle.pensize(5)
#打印返回画笔尺寸的大小
print(turtle.pensize()) #5

参数:
pen:画笔的样式,默认None是初始的状态,可以将别的画笔的实例对象作为画笔的样式
pendict(画笔字典键值对):如下
"fillcolor": color-string or color-tuple
"outline":positive number
"pencolor": color-string or color-tuple
"pendown":True/False
"pensize": positive number
"resizemode":"auto" or "user" or "noresize"
"shearfactor":number
"shown":True/False
"speed":number in range 0..10
"stretchfactor" : (positive number, positive number)
"tilt":number

import turtle
#默认情况
print(turtle.pen())#{'shown': True, 'pendown': True, 'pencolor': 'black', 'fillcolor': 'black', 'pensize': 1, 'speed': 3, 'resizemode': 'noresize', 'stretchfactor': (1.0, 1.0), 'shearfactor': 0.0, 'outline': 1, 'tilt': 0.0}
#进行设置
turtle.pen(fillcolor="black", pencolor="red", pensize=10)
#设置后的结果
print(turtle.pen())#{'shown': True, 'pendown': True, 'pencolor': 'red', 'fillcolor': 'black', 'pensize': 10, 'speed': 3, 'resizemode': 'noresize', 'stretchfactor': (1.0, 1.0), 'shearfactor': 0.0, 'outline': 1, 'tilt': 0.0}
turtle.fd(100)
penstate=turtle.pen()#创建画笔的实例对象
#设置画笔的属性
turtle.pen(penstate, fillcolor="green")
import turtle
turtle.penup()#抬笔
print(turtle.isdown())#False
turtle.pendown()#落笔
print(turtle.isdown())#True
import turtle
#返回画笔颜色
print(turtle.pencolor())
#设置画笔的颜色
turtle.pencolor("red")
turtle.fd(50)
#设置画笔颜色
turtle.pencolor("#33cc8c")
turtle.fd(50)
#pencolor(r,g,b)或pencolor((r,g,b))语法设置画笔颜色,取决于颜色模式,colormode为1.0时r,g,b取值范围在0-1.0小数,colormode为255时r,g,b取值范围在0-255的整数
turtle.getscreen().colormode(1.0)
#打印颜色模式
print(turtle.getscreen().colormode())
turtle.pencolor(0.1, 0.2, 0)
turtle.fd(50)
turtle.getscreen().colormode(255)
#打印颜色模式
print(turtle.getscreen().colormode())
turtle.pencolor(30, 210, 180)
turtle.fd(50)
import turtle
print(turtle.fillcolor())
screen = turtle.getscreen()
#设置填充颜色
turtle.fillcolor("red")
turtle.fd(50)
#设置填充颜色
turtle.fillcolor("#33cc8c")
turtle.fd(50)
# fillcolor(r, g, b)fillcolor((r, g, b))语法设置画笔颜色,取决于颜色模式,colormode颜色模式取值1.0或255,colormode为1.0时r,g,b取值范围0-1.0小数;colormode为255时r,g,b取值范围0-255的整数
#设置填充颜色模式
screen.colormode(1.0)
#打印颜色模式
print(screen.colormode())
turtle.fillcolor(0.1, 0.2, 0)
turtle.fd(50)
#设置填充颜色模式
screen.colormode(255)
#打印填充颜色模式
print(screen.colormode())
turtle.fillcolor(30, 210, 180)
turtle.fd(50)
import turtle
#返回pencolor和fillcolor()
print(turtle.color()) #('black', 'black')
turtle.color("red")
print(turtle.color()) #('red', 'red')
turtle.color("#285078", "#a0c8f0")
print(turtle.color()) #((0.1568627450980392, 0.3137254901960784, 0.47058823529411764), (0.6274509803921569, 0.7843137254901961, 0.9411764705882353))
turtle.color("red", "green")
print(turtle.color())#('red', 'green')
import turtle
#返回填充状态False
print(turtle.filling())
#绘制shape之前先准备开始fill
turtle.begin_fill()
#返回填充状态True
print(turtle.filling())
turtle.circle(20, None, 6)
#绘制完shape之后结束fill
turtle.end_fill()
#返回False
print(turtle.filling())

[注意:screen其实是TurtleScreen对象的实例,使用screen是要通过screen = turtle.getscreen()得到]

import turtle
#返回填充状态False
print(turtle.filling())
#绘制shape之前先准备开始fill
turtle.begin_fill()
#返回填充状态True
print(turtle.filling())
turtle.circle(20, None, 6)
#绘制完shape之后结束fill
turtle.end_fill()
#返回False
print(turtle.filling())
#turtle.reset()
screen = turtle.getscreen()
screen.reset()
turtle.done()
import turtle
#返回填充状态False
print(turtle.filling())
#绘制shape之前先准备开始fill
turtle.begin_fill()
#返回填充状态True
print(turtle.filling())
turtle.circle(20, None, 6)
#绘制完shape之后结束fill
turtle.end_fill()
turtle.rt(90)
turtle.forward(100)

turtle1 = turtle.Turtle()
turtle1.goto(100, 200)
turtle1.forward(100)
#返回False
print(turtle.filling())
turtle.clear()
turtle1.reset()
turtle.done()
import turtle
turtle.write("home=", True, align="center")
turtle.write((0,500000), True)
turtle.write("hellohhhhh", True)
turtle.done()
import turtle
turtle.write("home=", True, align="center")
turtle.write((0,500000), False)
turtle.write("hellohhhhh", False)
turtle.done()
turtle.hideturtle()
turtle.showturtle()
import turtle
turtle.hideturtle()
print(turtle.isvisible())#False
turtle.showturtle()
print(turtle.isvisible())#True
import turtle
print(turtle.shape())#classic
turtle.shape("turtle")
print(turtle.shape())#turtle
import turtle
import time
#设置外轮廓颜色为red,填充色为black
turtle.pen(pencolor="red", fillcolor="black")
print(turtle.shapesize())#(1.0, 1.0, 1)表示垂直方向缩放到原来1倍,水平方向缩放到原来1倍,外轮廓宽度为1
#设置resizemode为“user”模式
turtle.resizemode("user")
#表示垂直方向缩放到原来5倍,水平方向缩放到原来5倍,外轮廓宽度12
turtle.shapesize(5, 5, 12)
time.sleep(2)
print(turtle.shapesize())
#设置轮廓宽度为8
turtle.shapesize(outline=8)
time.sleep(2)
print(turtle.shapesize())
import turtle
import time
#箭头改成圆形
turtle.shape("circle")
#垂直缩放到5倍,水平缩放到2倍
turtle.shapesize(5, 2)
print(turtle.shearfactor())
time.sleep(2)
#创建另一个(海龟)箭头,和原来的拉开距离
t1 = turtle.Turtle()
t1.pu()
t1.fd(100)
t1.pd()
t1.shape("circle")
#垂直缩放到5倍,水平缩放到2倍
t1.shapesize(5, 2)
#设置shearfactor为1
t1.shearfactor(1)#设置箭头与x轴的正切值为1,箭头与x轴的夹角为45度
print(t1.shearfactor())
turtle.done()
import turtle
#清屏并恢复原始坐标位置(0,0),恢复默认方向向右
turtle.reset()
#改变箭头形状为圆形
turtle.shape("circle")
#垂直缩放到5倍,水平缩放到2倍
turtle.shapesize(5, 2)
#保持方向向右,圆形箭头图标旋转45度
turtle.tilt(45)
#画线
turtle.fd(100)
#拷贝一份箭头形状
turtle.stamp()
#保持方向向右,圆形箭头图标旋转45度
turtle.tilt(45)
#画线
turtle.fd(100)
turtle.done()
import turtle
#清屏并恢复原始坐标位置(0,0),恢复默认方向向右
turtle.reset()
#改变箭头形状为圆形
turtle.shape("circle")
#垂直缩放到5倍,水平缩放到2倍
turtle.shapesize(5, 2)
#保持方向向右,圆形箭头图标旋转45度
turtle.tilt(45)
#画线
turtle.fd(100)
#拷贝一份箭头形状
turtle.stamp()
#保持方向向右,忽略当前箭头旋转的角度,圆形箭头图标旋转45度
turtle.tiltangle(45)
print(turtle.tiltangle())
#画线
turtle.fd(100)
turtle.done()
import turtle
print(turtle.shapetransform())#(1.0, 0.0, 0.0, 1.0)
turtle.shape("square")
#垂直方向缩放到4倍,水平缩放到2倍,正方形变长方形
turtle.shapesize(4, 2)
turtle.shearfactor(0.5)
print(turtle.shapetransform())#(4.0, 1.0, -0.0, 2.0)
turtle.done()
import turtle
turtle.shape("square")
print(turtle.get_shapepoly())#((10, -10), (10, 10), (-10, 10), (-10, -10))
turtle.shapetransform(4, -1, 0, 2)
print(turtle.get_shapepoly())#((50, -20), (30, 20), (-50, 20), (-30, -20))
import turtle
def turn(x, y):
    turtle.lt(90)
    #打印当前坐标
    print('x=', x, 'y=', y)
    #打印当前方向
    print(turtle.heading())
    #清除绑定关系
    turtle.onclick(None)
    #再次绑定
    turtle.onclick(turn)
turtle.onclick(turn)
turtle.done()
import turtle
def turn(x, y):
    turtle.lt(90)
    #打印当前坐标
    print('x=', x, 'y=', y)
    #打印当前方向
    print(turtle.heading())
    #清除绑定关系
    turtle.onrelease(None)
    #再次绑定
    turtle.onrelease(turn)
#绑定turn方法
turtle.onrelease(turn)
turtle.done()

【注意:当调用onclick和onrelease方法时就完成了绑定,当鼠标点击或松开就会触发对应的函数事件】

import turtle
def move(x, y):
    #海龟箭头移动到当前拖动位置
    turtle.goto(x, y)
    #清除绑定关系
    turtle.ondrag(None)
    #再次绑定
    turtle.ondrag(move)
#绑定turn方法
turtle.ondrag(move)
turtle.done()
import turtle
turtle.home()
#开始记录
turtle.begin_poly()
turtle.fd(100)
turtle.lt(20)
turtle.fd(30)
turtle.lt(60)
turtle.fd(50)
#结束记录
turtle.end_poly()
#返回记录的多边形
p = turtle.get_poly()
print(p) #((0.00,0.00), (100.00,0.00), (128.19,10.26), (136.87,59.50))
#将"myFavouriteShape"Shape添加TurtleScreen对象的shapelist中
turtle.register_shape("myFavouriteShape", p)
#使用新添加的shape
turtle.shape("myFavouriteShape")
turtle.done()
import turtle
mick = turtle.Turtle()
joe = mick.clone()
import turtle
pet = turtle.getturtle()
pet.fd(50)
print(pet)#<turtle.Turtle object at 0x00000000025482E8>
import turtle
#获取海龟屏幕TurtleScreen对象
ts = turtle.getscreen()
print(ts)#<turtle._Screen object at 0x000000000258C898>
#调用海龟屏幕对象的bgcolor方法,设置背景颜色为粉红色
ts.bgcolor("pink")
turtle.done()
turtle.setundobuffer(42)
import turtle
print(turtle.undobufferentries())#0
turtle.setundobuffer(42)
while turtle.undobufferentries():#判断是否可撤销
    turtle.undo()#执行撤销操作

【海龟屏幕(TurtleScreen/Screen)的相关方法:首先需要通过screen = turtle.getscreen()获取到海龟屏幕TurtleScreen的对象并赋值给变量screen,下文中screen均表示该海龟屏幕TurtleScreen的对象】

import turtle
screen = turtle.getscreen()
screen.bgcolor("orange")
#打印‘orange’
print(screen.bgcolor())
screen.bgcolor("#800080")
print(screen.bgcolor())
import turtle
screen = turtle.getscreen()
#打印当前背景图像名,打印结果为'nopic'
print(screen.bgpic())
#设置背景图像,h.gif需要提前放到该文件同级目录
screen.bgpic("h.gif")
#打印当前背景图像名,打印结果为"h.gif"
print(screen.bgpic())
# screen.bgpic('nopic')
#打印当前背景图像名,打印结果为'nopic'
# print(screen.bgpic())
turtle.done()

【注意:背景图片只能是gif格式,所以我们需要预先下载gif格式的照片,通过更改后缀的方式,并不能完成图片格式的更改】

import turtle
screen = turtle.getscreen()
#打印当前画布大小,结果为(400,300)
print(screen.screensize())
#调整画布大小,变大后出现了滚动条,可通过滑动滑块查看画布隐藏的部分
screen.screensize(2000, 1500)
#打印当前画布大小,结果为(2000,1500)
print(screen.screensize())
turtle.done()
import turtle
screen = turtle.getscreen()
# 获取当前海龟模式,打印结果为 logo
print(screen.mode())
turtle.shape("turtle")
# 清屏,位置方向恢复初始状态,保持海龟箭头形状不变
screen.reset()
# 设置海龟模式为"world"模式,感觉设不设置"world"模式展现效果没啥区别
screen.mode("world")
screen.setworldcoordinates(-50, -7.5, 50, 7.5)
for _ in range(72):
    turtle.lt(10)
for _ in range(8):
    turtle.lt(45)
    turtle.fd(2)
import turtle
screen =turtle.getscreen()
#获取绘图延迟毫秒数,打印结果为10
print(screen.delay())
#设置绘图延迟
screen.delay(5)
#获取绘图延迟毫秒数,打印结果为5
print(screen.delay())
import turtle
screen =turtle.getscreen()
# screen.tracer(1, 25)
# screen.tracer(None, 25)
screen.tracer(2, 25)
dist = 2
for i in range(200):
    turtle.fd(dist)
    turtle.rt(90)
    dist += 2

turtle.done()
import turtle
def f():
    turtle.fd(50)
    turtle.lt(60)
screen = turtle.getscreen()
#点击up键触发函数
screen.onkey(f, "Up")
#屏幕监听
screen.listen()
turtle.done()
import turtle
def f():
    turtle.fd(50)
    turtle.lt(60)
screen = turtle.getscreen()
#按下up键触发函数
screen.onkeypress(f, "Up")
#按下任意键时绑定f函数
screen.onkeypress(f, None)
#屏幕监听
screen.listen()
turtle.done()
import turtle
screen = turtle.getscreen()
def turn(x, y):
    turtle.lt(90)
    # 打印当前坐标
    print('x=', x, 'y=', y)
    print(turtle.heading())
# 清除绑定关系
screen.onclick(None)
# 再次绑定
# screen.onclick(turn)
#screen.onclick(turn, 3)
screen.onclick(turn, 2)
turtle.done()
"""
点击屏幕画多边形,再次点击停止绘制
"""
import turtle
#定义全局变量
running = False
def demo1():
    screen = turtle.getscreen()
    def f():
        #内部函数想修改或使用全局变量需要加global,否则认为是局部变量
        global running
        if running:
            turtle.fd(100)
            turtle.lt(45)
        #开启计数器,250毫秒后执行f函数
        screen.ontimer(f, 250)
    def change_status(x, y):
        #内部函数想修改或使用全局变量需要加global,否则认为是局部变量
        global running
        #bool取反操作
        running = not running
    f()
    screen.onclick(change_status)
def my_main():
    demo1()
    turtle.mainloop()

if __name__ == '__main__':
    my_main()
import turtle
screen = turtle.getscreen()
#弹出输入文本的弹出框
name = screen.textinput("欢迎框", "你的姓名是")
if (name != None and name != ""):
    print(name, ",您好")
import turtle
screen = turtle.getscreen()
#弹出输入数字的弹出框
age = screen.numinput("身高", "请输入您的身高(单位:米)", 0, 0, 2.5)
#判断容错处理
if age != None and age > 0:
    print("身高", age, "米")
import turtle
screen = turtle.getscreen()
print(screen.getcanvas())
import turtle
#获取当前可用海龟形状的名称列表
print(turtle.getscreen().getshapes())#['arrow', 'blank', 'circle', 'classic', 'square', 'triangle', 'turtle']
import turtle
screen = turtle.getscreen()
#方法一:
screen.register_shape("h.gif")
turtle.shape("h.gif")
turtle.fd(100)
turtle.done()
import turtle
screen = turtle.getscreen()
#方法二:
screen.register_shape("triangle",((5, -3), (0, 5), (-5, -3)))
turtle.forward(100)
turtle.done()
#方法3:shape_obj是一个shape对象见【turtle.begin_poly()、turtle.end_poly()和turtle.get_poly()配合使用】中例子
screen.register_shape("myFavouriteShape", shape_obj)
print(screen.turtles())#[<turtle.Turtle object at 0x00000000025DC400>]
for turtle in screen.turtles():
    print(turtle)
import turtle
#获取海龟绘图窗口高度(单位:像素)
print(turtle.window_height())#576
#获取海龟绘图窗口宽度(单位:像素)
print(turtle.window_width())#683
import turtle
import time
turtle.forward(100)
time.sleep(1)
turtle.bye()
turtle.done()
import turtle
turtle.exitonclick()
turtle.mainloop()
import turtle
screen = turtle.getscreen()
#海龟绘图窗口宽高分别为576和683,此时将默认展现的主窗口的大小设置成了576和100,垂直方向因为占不全会出现滚动条
# screen.setup(width=576, height=100, startx=0, starty=0)
screen.setup(width=0.75, height=0.5, startx=None, starty=None)
turtle.done()

设置海龟窗口标题

import turtle
screen = turtle.getscreen()
#设置海龟窗口标题
screen.title("hello turtle")
turtle.done()
上一篇 下一篇

猜你喜欢

热点阅读