Import pygame
pygame.init
BG = pygame.image.load('_pycache_/test_bg.jpg')
def DrawGameWin():
window.blit(BG,(0,0))
pygame.display.update()
DrawGameWin()
答案 0 :(得分:1)
首先,声明
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 )