Как исправить ошибку, возникшую после установки фона при рисовании черепахой?
Я начал изучать программирование с книги "Head First Learn to Code". Я должен сделать модуль для гонок на черепахах с графикой черепах Python. Я следовал за шагами один за другим, но когда я попытался запустить код, произошла «ошибка синтаксиса» со строкой «setup ()» в конце кода.
Я сравнил свой ответ с авторским, и все символы были одинаковыми. Затем я скопировал и попытался запустить авторский код. Когда я попытался запустить код, появилась только пустая страница. В коде я должен установить фон, который находится в том же каталоге, что и модуль.
import turtle
import random
turtles = list()
def setup():
global turtles
startline = -620
screen = turtle.Screen()
screen.setup(1290,720)
screen.bgpic('pavement.gif')
turtle_ycor = [-40, -20, 0, 20, 40]
turtle_color = ['blue', 'red', 'purple', 'brown', 'green']
for i in range(0, len(turtle_ycor)):
new_turtle = turtle.Turtle()
new_turtle.shape('turtle')
new_turtle.penup()
new_turtle.setpos(startline, turtle_ycor[i])
new_turtle.color(turtle_color[i])
new_turtle.pendown()
turtles.append(new_turtle)
def race():
global turtles
winner = False
finishline = 590
while not winner:
for current_turtle in turtles:
move = random.randint(0,2)
current_turtle.forward(move)
xcor = current_turtle.xcor()
if (xcor >= finishline):
winner = True
winner_color = current_turtle.color()
print('The winner is', winner_color[0])
setup()
race()
turtle.mainloop()
Я удалил строку screen.bgpic('pavement.gif')
, и авторский модуль работал хорошо, но у меня та же «синтаксическая ошибка». (Все символы были одинаковыми, позже я попытался скопировать и вставить каждую часть кода, и ошибка была той же).
Как я могу установить этот фоновый рисунок?
Сообщение об ошибке:
Traceback (most recent call last):
File "/home/viccha/.cache/.fr-mVA9RC/headfirstlearntocode-master/ch7/race_step3.py", line 41, in <module>
setup()
File "/home/viccha/.cache/.fr-mVA9RC/headfirstlearntocode-master/ch7/race_step3.py", line 11, in setup
screen.bgpic('pavement.gif')
File "/usr/lib/python3.6/turtle.py", line 1481, in bgpic
self._bgpics[picname] = self._image(picname)
File "/usr/lib/python3.6/turtle.py", line 479, in _image
return TK.PhotoImage(file=filename)
File "/usr/lib/python3.6/tkinter/__init__.py", line 3545, in __init__
Image.__init__(self, 'photo', name, cnf, master, **kw)
File "/usr/lib/python3.6/tkinter/__init__.py", line 3501, in __init__
self.tk.call(('image', 'create', imgtype, name,) + options)
_tkinter.TclError: couldn't open "pavement.gif": no such file or directory