首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Pygame的函数pygame.image.load()时遇到问题

使用Pygame的函数pygame.image.load()时遇到问题
EN

Stack Overflow用户
提问于 2015-05-13 01:17:51
回答 1查看 435关注 0票数 0

我最初尝试了这样的方法:

代码语言:javascript
运行
复制
import pygame
img = ''
if state == 'state 1':
    img = 'flum.png'
else:
    img = 'flab.png'

flooimage = pygame.image.load(img)

但是最后一行,flooimage = pygame.image.load(img)抛出了一个错误

代码语言:javascript
运行
复制
pygame.error: SDL_RWFromFile(): No file or no mode specified

我试着把最后一行改成

代码语言:javascript
运行
复制
flooimage = pygame.image.load(img, ".png")

但它抛出了相同的错误。有谁知道我该怎么做才能让它运行?会不会有类似的东西

代码语言:javascript
运行
复制
if state == 'state 1':
    img = pygame.image.load('flum.png')
[...]
flooimage = img

工作得更好?

EN

Stack Overflow用户

发布于 2015-05-13 01:54:31

从上面的代码可以看出,你还没有初始化pygame。此外,错误下面的代码行应如下所示:

代码语言:javascript
运行
复制
  flooimage = pygame.image.load(img + ".png")

您还应该将str()放在Img变量周围。如下所示:

代码语言:javascript
运行
复制
flooimage = pygame.image.load(str(img) + ".png")

我不确定你的程序要做什么,但你应该把你所有的图像加载到一个数组中,这样可以很容易地使用它们。

代码语言:javascript
运行
复制
IntAllScreens = [{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}]
            for IntAS in range (0,len(self.IntAllScreens)):
                    for IntT in range(0,100):
                                self.IntAllScreens [IntAS][IntT] = pygame.image.load( "Textures\\" + str(Img) + ".png")
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30197513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档