BG = pygame.image.load ('sprite / test_bg.jpg') pygame.error: Не удалось открыть sprite / test_bg.jpg - PullRequest
1 голос
/ 01 октября 2019
Import pygame

pygame.init

BG = pygame.image.load('_pycache_/test_bg.jpg')

def DrawGameWin():
    window.blit(BG,(0,0))

pygame.display.update()


DrawGameWin()

1 Ответ

1 голос
/ 01 октября 2019

Прежде всего, утверждение

pygame.init

не инициирует pygame. Это не вызов метода, он вообще ничего не делает. Квадратные скобки отсутствуют:

pygame.init()

Путь к файлу изображения должен соответствовать текущему рабочему каталогу. Возможно, рабочий каталог отличается от каталога файла python.

Имя и путь к файлу можно получить по __file__. Текущий рабочий каталог может быть получен с помощью os.getcwd() и может быть изменен с помощью os.chdir(path).

Одним из решений является изменение рабочего каталога:

import os

sourceFileDir = os.path.dirname(os.path.abspath(__file__))
os.chdir(sourceFileDir )

Альтернативное решение - найти абсолютный путь. Если изображение относится к папке файла Python (или даже в той же папке), вы можете получить каталог файла и объединить имя файла изображения. Например:

import pygame
import os

# get the directory of this file
sourceFileDir = os.path.dirname(os.path.abspath(__file__))

# [...]

imgPath = os.path.join(sourceFileDir, 'test_bg.jpg')
# imgPath = os.path.join(sourceFileDir, '_pycache_/test_bg.jpg')

BabyNarwhal = pygame.image.load().convert(imgPath)
BG = pygame.image.load(imgPath )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...