fp = builtins.open(filename, "rb") FileNotFoundError: [Errno 2] No such file or directory

В main.py картинка открывается нормально, но когда я пытаюсь запустить тесты, он её не видит. Я пробовал создать __init__.py, менял путь до файла, но ничего не помогает.

Примерная структура проекта:

────project
    │
    ├───src
    │       images.jpg
    │       main.py
    │
    └───tests
            test.py
img = ImageTk.PhotoImage(Image.open("images.jpg"))

Ответы (1 шт):

Автор решения: nomnoms12

Изменить путь в файле test.py:

img = ImageTk.PhotoImage(Image.open('../src/images.jpg'))

Ошибка возникает потому, что Вы указываете неверный путь до изображения.

Пути бывают двух видов: абсолютные и относительные. Путь images.jpg — относительный. То есть скрипт будет искать файл в той директории, из которой Вы его запускаете. В Вашем случае скрипт ищет файл tests\images.jpg, которого нет.

У Вас есть 3 пути:

  1. Скопировать изображение в tests
  2. Указать абсолютный путь
  3. Исправить относительный путь

Предлагаю исправить относительный. Сложности здесь могут возникнуть только с тем, как подняться в родительскую папку. Для этого есть комбинация из двух точек — ...

→ Ссылка