所以我正在做的是尝试在 pygame 中创建一个棋盘游戏,到目前为止我所拥有的是加载棋盘图像以绘制到屏幕上的代码但是我在打开时遇到了一些困难通过pygame的图像。如果您很好奇,这就是我要加载的图像的路径。 /home/kody/Coding/Python/Test/MonopolyPygame/MonopolyLib/board.bmp
所以我有一个用于加载名为 IMAGE 的图像的类,其中有一个 init 方法。
class IMAGE
__init__(self):
self.self.board = pygame.image.load("board.bmp")
IMAGE()
如果我只是单独运行这个小程序,它运行良好,但是当我用我的 Main
类运行它时,它似乎失败了。
所以我将 main.py 放在一个名为 BoardPygame 的文件夹中。然后我在 BoardPygame 中有一个名为 BoardLib 的文件夹。在文件 BoardLib 中,我有一个名为 init.py 的 python 文件,使 BoardLib 成为一个库,然后我有另一个名为 images .py 的 python 文件,它只包含类 IMAGE
,在这个文件中我还有一个名为 board.bmp 的 bmp
在我的文件 main.py
中,我有一个名为 Main 的类。然后我可以通过这种方式访问 images.py 以加载图像,或者至少尝试这样做。
import BoardLib
from BoardLib import *
class Main:
def __init__(self):
self.Images = images.IMAGE()
然而,每当我只使用 main.py 文件运行程序时,它总是会出现错误
File "/home/kody/Coding/Python/Test/MonopolyPygame/MonopolyLib/images.py", line 8, in __init__
self.board = pygame.image.load("board.bmp")
pygame.error: Couldn't open board.bmp
为什么会出现这个问题?
谢谢
最佳答案
class IMAGE
__init__(self):
self.self.board = pygame.image.load("board.bmp")
IMAGE()
在这段代码中尝试移除双重 self ,像这样
class IMAGE
__init__(self):
self.board = pygame.image.load("board.bmp")
IMAGE()
而且,在主要方面,试试这个:
import BoardLib
from BoardLib import *
class Main:
def __init__(self):
self.Images = IMAGE().board
希望这对您有所帮助。
关于python - Pygame 加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22776022/