Графика черепахи в питоне работает некорректно

Я пытаюсь выполнить следующий код из четвертой главы книги «Как думать как компьютерный ученый». Но кажется, что объект черепахи не рисует наклонные квадраты.

import turtle

def draw_multicolor_square(t, sz):
    """Make turtle t draw a multi-color square of sz."""
    for i in ["red", "purple", "hotpink", "blue"]:
        t.color(i)
        t.forward(sz)
        t.left(90)

wn = turtle.Screen()        # Set up the window and its attributes
wn.bgcolor("lightgreen")

tess = turtle.Turtle()      # Create tess and set some attributes
tess.pensize(3)

size = 20                   # Size of the smallest square
for i in range(15):
    draw_multicolor_square(tess, size)
    size = size + 10        # Increase the size for next time
    tess.forward(10)        # Move tess along a little
    tess.right(18)          #    and give her some turn

wn.mainloop()

Я ожидаю несколько квадратов, но он рисует только 3 квадрата без наклона.


person Sadegh Eskandari    schedule 05.07.2019    source источник
comment
Помимо вызывающих тошноту цветов, ваш код отлично работает на моем компьютере. Какую версию питона вы используете? import sys; print(sys.version)   -  person Alain T.    schedule 06.07.2019
comment
3.5.5 |Анаконда, Инк.| (по умолчанию, 13 мая 2018 г., 21:27:04) [GCC 7.2.0]   -  person Sadegh Eskandari    schedule 06.07.2019


Ответы (2)


Могут быть некоторые проблемы с черепахой на анаконде. Я нашел этот пост на другом сайте:

Вызовите turtle.done() с помощью turtle.bye() и используйте встроенный или автоматический бэкенд для консоли IPython (Настройки > Консоль IPython > Графика > Графический бэкенд). В качестве примера:

https://github.com/spyder-ide/spyder/issues/6278

person Alain T.    schedule 05.07.2019
comment
Ссылка, по-видимому, связана с проблемой запуска кода во второй раз в Anaconda, а не с отсутствующими графическими элементами в успешно работающей программе. - person cdlane; 07.07.2019

Если вы видите только три квадрата, это означает, что ваша графика черепахи не показывает наклонные линии, а только горизонтальные и вертикальные. Это встречалось несколько раз, например: Turtle не будет рисовать угловые линии

Ответ всегда кажется таким: «это проблема графического драйвера». Как только проблема с драйвером видеокарты будет устранена, все начнет работать, как и ожидалось. Я не могу уточнить, так как это зависит от настроек вашей системы.

person cdlane    schedule 07.07.2019