Специфика c ошибки копирования: отсутствуют круглые скобки:
< ang = t.heading
---
> ang = t.heading()
То же самое:
< while t.ycor > 0:
---
> while t.ycor() > 0:
Отсутствует скобка и строка для мусора:
< t.sety(random.randint(0,100)
< (sety)
---
> t.sety(random.randint(0, 100))
Ошибка написания:
< t.write("Awsome!",False,"center",("",10))
---
> t.write("Awesome!", False, "center", ("", 10))
Пропущенные скобки и возможное пропущенное окончательное утверждение:
< t.listen
---
> t.listen()
> t.mainloop()
Рабочий код с допустимым отступом:
import turtle as t
import random
def turn_up():
t.left(2)
def turn_down():
t.right(2)
def fire():
ang = t.heading()
while t.ycor() > 0:
t.fd(15)
t.rt(5)
d = t.distance(target, 0)
t.sety(random.randint(0, 100))
if d < 25:
t.color("green")
t.write("Awesome!", False, "center", ("", 10))
else:
t.color("red")
t.write("Miss", False, "center", ("", 10))
t.color("black")
t.goto(-200, 10)
t.setheading(ang)
t.up()
t.goto(-300, 0)
t.down()
t.goto(300, 0)
target = random.randint(50, 150)
t.pensize(3)
t.color("green")
t.up()
t.goto(target - 25, 2)
t.down()
t.goto(target + 25, 2)
t.color("black")
t.pensize(2)
t.up()
t.goto(-200, 10)
t.setheading(20)
t.onkeypress(turn_up, "Up")
t.onkeypress(turn_down, "Down")
t.onkeypress(fire, "space")
t.listen()
t.mainloop()
Как я мог бы написать этот пример:
from turtle import Screen, Turtle
from random import randrange
def turn_up():
turtle.left(2)
def turn_down():
turtle.right(2)
def fire():
angle = turtle.heading()
while turtle.ycor() > 2:
turtle.forward(15)
turtle.right(5)
distance = turtle.distance(target, 2)
turtle.sety(randrange(100))
if distance < 25:
turtle.color('green')
turtle.write("Awesome!", align='center', font=('', 10))
turtle.setheading(20)
else:
turtle.color('red')
turtle.write("Miss", align='center', font=('', 10))
turtle.setheading(angle)
turtle.color('black')
turtle.goto(-200, 10)
turtle = Turtle()
turtle.penup()
turtle.setx(-300)
turtle.pendown()
turtle.setx(300)
target = randrange(50, 150)
turtle.pensize(3)
turtle.color('green')
turtle.penup()
turtle.goto(target - 25, 2)
turtle.pendown()
turtle.goto(target + 25, 2)
turtle.color('black')
turtle.pensize(2)
turtle.penup()
turtle.goto(-200, 10)
turtle.setheading(20)
screen = Screen()
screen.onkeypress(turn_up, 'Up')
screen.onkeypress(turn_down, 'Down')
screen.onkeypress(fire, 'space')
screen.listen()
screen.mainloop()