Окно Python Turtle вылетает каждый второй раз - PullRequest
0 голосов
/ 20 мая 2018

Приведенный ниже код представляет собой базовый квадратный чертеж с использованием Turtle на python.

Запуск кода с первого раза работает.Но повторный запуск кода активирует окно Turtle, которое не отвечает и впоследствии каждый раз вылетает.

Сообщение об ошибке включает в себя raise Terminator и Terminator

Перезапуск ядра в Spyder (Python 3.6на рабочем столе Dell) исправляет проблему, поскольку я могу снова успешно выполнить код, но основная причина остается загадкой?

Ссылка на другой вопрос, который похож, но все еще остается без ответа.

Пожалуйста, задайте этот вопрос +1, если вы считаете его достойным ответа !!

import turtle
bob = turtle.Turtle()
print(bob)
for i in range(4):
    bob.fd(100)
    bob.lt(90)

turtle.mainloop()

1 Ответ

0 голосов
/ 01 октября 2018

Я понимаю, что это покажется совершенно неудовлетворительным, но я обнаружил, что создание черепахи с помощью:

try:
    tess = turtle.Turtle()
except:
    tess = turtle.Turtle()  

работает (то есть устраняет «работу через раз». Я также начинаю с

wn = turtle.Screen()

и заканчиваются

from sys import platform
if platform=='win32':
    wn.exitonclick()

Без этих частей, если я попытаюсь переместить графические окна черепахи в Windows, все пойдет не так (запуск Spyder for Python 3.6 на компьютере с Windows)редактирование: конечно, OSX совершенно счастлив без команды exitonclick () и недоволен ею, поэтому добавлена ​​версия с окончанием «исправление функции» для конкретной платформы. Для OSX по-прежнему нужна попытка ... кроме части.

...