微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在一个程序中多次启动屏幕

如何解决在一个程序中多次启动屏幕

当我从命令行启动我的程序时,在第一个函数显示turtle.Terminator 错误。我需要发射乌龟十次。这个程序是另一个程序的模块。你知道怎么做吗?

我有这个代码

from turtle import *


def prvni_chyba():
    pencolor('blue')
    speed(0)
    hideturtle()
    title('Oběšení')
    left(90)
    for i in range(180):
        forward(1)
        left(1)

    left(180)
    penup()
    for i in range(90):
        forward(1)
        right(1)
    bye()


def druha_chyba():
    pencolor('blue')
    speed(0)
    hideturtle()
    title('Oběšení')
    left(90)
    for i in range(180):
        forward(1)
        left(1)

    left(180)
    penup()
    for i in range(90):
        forward(1)
        right(1)

    pendown()
    left(90)
    forward(150)
    sleep(2)
    bye()

prvni_chyba()
druha_chyba()

解决方法

调用 bye() 后,standalone 海龟游戏就结束了。您正在做的工作的近似方法是使用 clearscreen() 而不是 bye()

from turtle import *
from time import sleep

def prvni_chyba():
    clearscreen()
    hideturtle()
    title('Oběšení blue')
    pencolor('blue')
    speed('fastest')
    setheading(90)

    for _ in range(180):
        forward(1)
        left(1)

    left(180)
    penup()

    for _ in range(90):
        forward(1)
        right(1)

    pendown()

def druha_chyba():
    clearscreen()
    hideturtle()
    title('Oběšení red')
    pencolor('red')
    speed('fastest')
    setheading(90)

    for _ in range(180):
        forward(1)
        left(1)

    left(180)
    penup()

    for _ in range(90):
        forward(1)
        right(1)

    pendown()
    left(90)
    forward(150)

prvni_chyba()
sleep(2)
druha_chyba()
sleep(2)

如果您需要乌龟窗口出现、消失和重新出现,那么您可以在 tkinter 下从 standalone 乌龟切换到 embedded 乌龟。在那个模型中,你可以让 tkinter 创建一个窗口,分配一个海龟画布,运行一个函数,抛出窗口,创建另一个窗口,分配一个海龟画布等等。或者干脆让 tkinter 隐藏窗口,调用 clearscreen(),然后再次出现相同的窗口,但运行不同的海龟例程。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。