【问题标题】:Pygame cannot load image from same directory as scriptPygame 无法从与脚本相同的目录加载图像
【发布时间】:2014-08-30 12:45:05
【问题描述】:

所以我安装了 python 2.7.8 和最新的 pygame,但我似乎无法让 image.load() 找到我的图像文件,尽管多次尝试重命名和重新检查拼写。使用它的图像和脚本位于同一目录中。有没有人遇到过类似的问题?

self.src_image = pygame.image.load

是有问题的线路。 image 用作参数,稍后用特定的文件名填充。

这里有一些上下文:

import pygame, math, sys, os
from pygame.locals import *
screen = pygame.display.set_mode((1024, 786))
clock = pygame.time.Clock()

class WitchSprite(pygame.sprite.Sprite):
     speed = 10
     acceleration = .4

     def __init__(self, image, position):
         pygame.sprite.Sprite.__init__(self)
         self.src_image = pygame.image.load(os.path.join(image))
         self.postion = position
         self.speed = self.direction = 0
         self.k_left = self.k_right = self.k_down = self.k_up = 0

【问题讨论】:

  • 贴出相关代码总是有帮助的;只是在黑暗中拍摄会更难解决您的问题。
  • 显示更多代码 - 你如何使用 self.src_image为什么 你将函数名称 pygame.image.load 分配给 self.src_image 吗?
  • 您用来加载实际.png 文件的代码在哪里?

标签: image python-2.7 directory load pygame


【解决方案1】:

首先,检查您的图像是否可以加载。使用pygame.image.get_extended() 检查它是否会加载图像格式。它应该返回True

pygame 文档说您应该“使用 os.path.join() 来实现兼容性”。尝试使用os 加载您的图像,看看是否能解决您的问题。

例如:“asurf = pygame.image.load(os.path.join('data', 'bla.png'))

【讨论】:

  • 获取扩展返回true,现在图像行下方的行似乎有错误,所以希望在我修复它之后,它会起作用。谢谢你的建议。
  • 原来我错过了一个右括号,问题与以前完全相同。我担心我以某种方式搞砸了我的安装或类似的东西。因为这个问题在我使用 pygame 的整个过程中一直存在,而且对很多人来说似乎不是问题。
  • 始终如一地,它给了我:'File"C:\Users...\game\movingthing.py",第 13 行,在 init self.src_image = pygame. image.load(os.path.join(image)) pygame.error: 无法打开 w.png'
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-26
  • 1970-01-01
  • 2020-01-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多