Python 我能';即使安装了pygame,也不能加载图像
当我尝试用pygame加载图像时,就像pygame.image.load中的.load部分不存在一样。我已经初始化了它,所以我不知道为什么它不让我使用这些图像 代码: 错误: 文件“c:/Users/(user)/Desktop/Python Projects/SpaceInvader/main.py”,第12行,在 RED\u SPACE\u SHIP=pygame.image.load(os.path.join(“assets”、“pixel\u SHIP\u RED\u small.png”)) pygame.error:无法打开资产\pixel\u ship\u red\u small.pngPython 我能';即使安装了pygame,也不能加载图像,python,python-3.x,image,pygame,loading,Python,Python 3.x,Image,Pygame,Loading,当我尝试用pygame加载图像时,就像pygame.image.load中的.load部分不存在一样。我已经初始化了它,所以我不知道为什么它不让我使用这些图像 代码: 错误: 文件“c:/Users/(user)/Desktop/Python Projects/SpaceInvader/main.py”,第12行,在 RED\u SPACE\u SHIP=pygame.image.load(os.path.join(“assets”、“pixel\u SHIP\u RED\u small.png
当我删除那条线时,它不仅仅是红色的船,而是所有的船。你没有真正初始化
pygame
pygame.init
是一个函数,您应该使用以下函数调用它:
pygame.init()
那么它应该会起作用
如果在那之后它仍然不起作用,请确保您提供给资产的路径是正确的,并且Python能够找到它们(即,在这些路径与您相对的位置运行游戏。否则,您可能应该使用
\uuuu file\uuuu
上的os.realpath
等实用功能来查找这些文件相对于脚本的位置)。您没有真正初始化pygame
pygame.init
是一个函数,您应该使用以下函数调用它:
pygame.init()
那么它应该会起作用
如果在那之后它仍然不起作用,请确保您提供给资产的路径是正确的,并且Python能够找到它们(即,在这些路径与您相对的位置运行游戏。否则,您可能应该使用
\uuuuuu文件
上的os.realpath
等实用函数来查找这些文件相对于脚本的位置)。Python文件的工作目录和目录不一定相同
要么更换工作负责人:
导入操作系统
sourceFileDir=os.path.dirname(os.path.abspath(_文件__))
os.chdir(sourceFileDir)
或创建绝对文件路径:
导入操作系统
sourceFileDir=os.path.dirname(os.path.abspath(_文件__))
# [...]
红色空间船舶=pygame.image.load(
join(sourceFileDir,“assets”,“pixel\u ship\u red\u small.png”))
工作目录和Python文件的目录不一定相同
要么更换工作负责人:
导入操作系统
sourceFileDir=os.path.dirname(os.path.abspath(_文件__))
os.chdir(sourceFileDir)
或创建绝对文件路径:
导入操作系统
sourceFileDir=os.path.dirname(os.path.abspath(_文件__))
# [...]
红色空间船舶=pygame.image.load(
join(sourceFileDir,“assets”,“pixel\u ship\u red\u small.png”))
是的,我提供的路径是正确的,这不是有问题的路径,我认为它是pygame,因为当我按住ctrl键时,我不能按load键,但我可以按pygame.Images。你从哪个目录运行游戏?你的项目的目录树是什么样子的?我的一个朋友帮我解决了它。这是一个Visual Studio代码错误,所以我不得不switch IDE的。是的,我提供的路径是正确的,它不是有问题的路径,我认为它是pygame,因为当我按住ctrl键时,我不能按load,但我可以按pygame.Images。你从哪个目录运行游戏?你的项目的目录树是什么样子的?我的一个朋友帮我解决了它。这是一个Visual Studio代码错误,所以我不得不这么做切换IDE。
# Imports
import os
import time
import random
import pygame
from pygame.locals import *
# Init
pygame.init()
# Loading images
RED_SPACE_SHIP = pygame.image.load(os.path.join("assets", "pixel_ship_red_small.png"))
GREEN_SPACE_SHIP = pygame.image.load(os.path.join("assets", "pixel_ship_green_small.png"))
BLUE_SPACE_SHIP = pygame.image.load(os.path.join("assets", "pixel_ship_blue_small.png"))
# Player's Ship
YELLOW_SPACE_SHIP = pygame.image.load(os.path.join("assets", "pixel_ship_yellow.png"))
# Lasers
RED_LASER = pygame.image.load(os.path.join("assets", "pixel_laser_red.png"))
RED_GREEN = pygame.image.load(os.path.join("assets", "pixel_laser_green.png"))
RED_BLUE = pygame.image.load(os.path.join("assets", "pixel_laser_blue.png"))
RED_YELLOW = pygame.image.load(os.path.join("assets", "pixel_laser_yellow.png"))
# Background
BG = pygame.image.load(os.path.join("assets", "background-black.png"))