#python #python-2.7 #function #pycharm #turtle-graphics
#python #python-2.7 #функция #pycharm #черепаха-графика
Вопрос:
У меня вопрос, я пытался нарисовать квадрат и круг на Python (2.7) с помощью модуля turtle.
import turtle
def draw_cricle(circle_size):
boby = turtle.Turtle()
boby.color("black")
boby.shape("arrow")
boby.right(90)
boby.forward(200)
boby.left(90)
boby.back(20)
boby.circle(circle_size)
def draw_square(forward_dst, right_angle):
window = turtle.Screen()
window.bgcolor("red")
brad = turtle.Turtle()
brad.shape("circle")
brad.speed(3)
brad.forward(forward_dst)
brad.right(right_angle)
brad.forward(forward_dst)
brad.right(right_angle)
brad.forward(forward_dst)
brad.right(right_angle)
brad.forward(forward_dst)
brad.right(right_angle)
window.exitonclick()
draw_square(100,90)
draw_cricle(100)
Моя проблема в том, что я не могу вызвать функцию draw_circle после вызова функции draw_square.
И да, я знаю, что мне следовало использовать цикл в draw_square
Комментарии:
1. Что вы имеете в виду «я не могу вызвать функцию draw_circle»? что происходит, когда вы пытаетесь?
2. Когда я запускал программу, выполнялась только первая функция. Но я получил ответ ниже.
Ответ №1:
Вы закрываете окно при запуске window.exitonclick() из draw_square
функции. Вы должны определить окно вне этих функций, если хотите использовать одно и то же окно для рисования квадрата и круга, в противном случае вы закрываете окно еще до того, как начнете рисовать круг.
import turtle
def draw_cricle(circle_size):
boby = turtle.Turtle()
boby.color("black")
boby.shape("arrow")
boby.right(90)
boby.forward(200)
boby.left(90)
boby.back(20)
boby.circle(circle_size)
def draw_square(forward_dst, right_angle):
brad = turtle.Turtle()
brad.shape("circle")
brad.speed(3)
brad.forward(forward_dst)
brad.right(right_angle)
brad.forward(forward_dst)
brad.right(right_angle)
brad.forward(forward_dst)
brad.right(right_angle)
brad.forward(forward_dst)
brad.right(right_angle)
window = turtle.Screen()
window.bgcolor("red")
draw_square(100,90)
draw_cricle(100)
window.exitonclick()