python не обнаруживает изображение

#python #python-3.x #turtle-graphics #python-turtle

#python #python-3.x #черепаха-графика #python-черепаха

Вопрос:

Я делаю эту простую программу Python turtle, и по какой-то причине программа не обнаруживает файлы изображений. Я запустил программу как в VSCode, так и в Repl, и у меня ошибка в обоих. Я дважды проверил имена изображений вместе с их форматами

 #-----import turtle-----
import turtle as trtl

#-----setup-----
pear_image = "pear.png"
apple_image = "apple.png"

main = trtl.Screen()
main.setup(width=0.5, height=0.5)
main.bgpic("background.jpg")
main.addshape(pear_image)
main.addshape(apple_image)


pear = trtl.Turtle()
pear.shape(pear_image)
pear.penup()

apple = trtl.Turtle()
apple.shape(apple_image)
apple.penup()

#-----functions-----
# given a turtle, set that turtle to be shaped by the image file
def draw_pear(active_pear):
  active_pear.shape(pear_image)
  main.update()

def pear_down():
  pear.left(-120)
  pear.forward(100)


def draw_apple(active_apple):
  active_apple.shape(apple_image)
  main.update()

def apple_down():
  apple.left(-60)
  apple.forward(100)

def write_pear():
  main.goto(0,-80)
  main.pendown()
  main.color("yellow")
  main.write("Pear", font=("Arial", 74, "bold"))

def write_apple():
  main.goto(0,-80)
  main.pendown()
  main.color("red")
  main.write("Apple", font=("Arial", 74, "bold"))

#-----function calls-----

pear_down()

apple_down()

main.onkeypress(write_pear, "p")

main.onkeypress(write_apple, "a")

main.mainloop()
  

Спасибо за всю помощь!

Комментарии:

1. вы уверены, что они находятся в том же каталоге, в котором main.mainloop() запущен ваш?

2. хотите включить точную ошибку?

3. @BenPersonick извините за это, он говорит, что не может найти background.jpg файл

4. @chrymxbrwn Да

Ответ №1:

Я думаю, вам нужно указать путь к изображению. например «c:/apple.png «, убедитесь, что слэшеры ведут себя правильно.

Комментарии:

1. Я уже пробовал это. В нем говорится «Плохие аргументы для register_shape». Я думаю, что проблема вызвана python 3.9.0, я собираюсь вернуться к 3.8.2, который я использовал ранее, чтобы посмотреть, работает ли он

2. Функция фонового изображения (main.bgpic) может использовать только файлы .gif. Ссылка

3. Да, не только это, есть некоторые проблемы с python 3.8 , поэтому я вернулся к версии 3.7 и использовал gif-изображения, и теперь, похоже, это работает