有人可以帮我确定哪里出错了吗?谢谢。我得到:pygame.error: Couldn't open space.png
。我的代码如下:
import random, math, pygame
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((800,600))
pygame.display.set_caption("orbit demo")
space = pygame.image.load("space.png").convert()
while True:
for event in pygame.event.get():
if event.type == QUIT:
sys.exit()
keys = pygame.key.get_pressed()
if keys[K_ESCAPE]:
sys.exit()
#draw backgroud
screen.blit(space, (0,0))
pygame.display.flip()
答案 0 :(得分:1)
您可能需要执行以下操作:
import pygame
import os
try:
# load from subfolder 'data'
background = pygame.image.load(os.path.join("data","background640x480_a.jpg"))
ball = pygame.image.load(os.path.join("data","snake.gif"))
except:
raise UserWarning, "Unable to find the images in the folder 'data' :-( "
这是从Python Game Book网站获得的。基本上你告诉它在哪里看(在上面的代码中,它是数据文件夹。如果它找不到它,它会报告用户警告。
所以在我为我的游戏写作的例子中,我有一个图像文件夹,所以我这样做
self.image = background = pygame.image.load(os.path.join("images","starship.png")).convert()
我是这方面的新手,但阅读建议你这样做。
编辑 - 另一个原因可能是。它是正确的格式(例如png)还是您将文件命名为其他格式?
答案 1 :(得分:0)
尝试指定图像的完整路径,例如:C:/Python34/your_folder/file_name.png
注意:在你的python代码中引用一个你不能使用“\”的路径,必须使用“/” “\”在python中有特定的含义。
答案 2 :(得分:0)
对我来说,答案是我没有从包含游戏文件的文件夹中运行命令。我的handleLogin = (username, password) => {
const authDetails = new AuthenticationDetails({
Username: username,
Password: password,
});
const userData = {
Username: username,
Pool: getUserPool(),
Storage: getStorage(),
};
const cognitoUser = new CognitoUser(userData);
cognitoUser.authenticateUser(authDetails, {
onSuccess: () => {
// login
}
newPasswordRequired: userAttr => {
this.setState({
isFirstLogin: true,
user: cognitoUser,
userAttr: userAttr,
});
},
});
};
changePassword = (newPassword) => {
const cognitoUser = this.state.user;
const userAttr = this.state.userAttr;
cognitoUser.completeNewPasswordChallenge(newPassword, userAttr, {
onSuccess: result => {
// login
}
});
};
render() {
return (
<div>
{this.state.isFirstLogin ? (
<NewPassswordForm changePassword={this.changePassword} />
) : (
<LoginForm handleLogin={this.handleLogin} />
)}
</div>
);
}
文件和.py
文件都在最高级别,因此我.png
进入了文件目录,然后运行了。