当前位置: 首页 > 知识库问答 >
问题:

如何修复窗口中的Python Pygame图像错误

路裕
2023-03-14

我试图加载一个png文件到python通过pyplay和它不工作这是我的代码:

import pygame
from pygame.locals import *
pygame.init()
display_width = 800
display_height = 600
black = (0,0,0)
white = (255,255,255)
red = (255,0,0)

gameDisplay = pygame.display.set_mode((display_width,display_height))
pygame.display.set_caption("Game")
clock = pygame.time.Clock()
carImage = pygame.image.load('you.png')
def car(x,y):
    gameDisplay.blit(carImage,(x,y))
    x = (display_width * 0.45)
    y = (display_height * 0.8)
    crashed = False
    while not crashed:
       for event in pygame.event.get():
           if event.type == pygame.QUIT:
               crashed = True
       gameDisplay.fill(white)
       car(x,y)
       pygame.display.update()
       clock.tick(24)
    pygame.quit()
    quit()

上面写着:

回溯(最近一次呼叫最后一次):

carImage=pygame中的文件“C:/Users/Dawn/PycharmProjects/snakegame/snake.py”,第13行。形象加载('you.png')

pygame.error:打不开you.png

请帮帮我我不知道为什么这一直显示。

我现在使用窗口10,我做了C:\。\...\you.png方法,但它仍然不起作用。

共有1个答案

诸葛文博
2023-03-14

根据这个答案,建议使用相对路径。这样做总是更好的,因为你不必关心 '\', '/' 或操作系统(有人已经为我们做了: v)。

问题似乎在于它,因为下面的代码对我来说很好。我们认为您有一个images_store文件夹,可以将您的图像存储在与您的父目录相同的目录中。py文件(当然,您可以任意更改它)。

import pygame
import os.path as osp
from pygame.locals import *


pygame.init()

display_width, display_height = 800, 600
black = (0,0,0)
white = (255,255,255)
red = (255,0,0)

current_path = osp.dirname(__file__)                          # Where your .py file is located
image_path = osp.join(current_path, 'images_store')           # The image folder path
carImage = pygame.image.load(osp.join(image_path, 'you.png'))


gameDisplay = pygame.display.set_mode((display_width, display_height))
pygame.display.set_caption("Game")
clock = pygame.time.Clock()

def car(x,y):
   gameDisplay.blit(carImage, (x, y))

x = (display_width * 0.45)
y = (display_height * 0.8)
crashed = False
while not crashed:
   for event in pygame.event.get():
       if event.type == pygame.QUIT:
           crashed = True
   gameDisplay.fill(white)
   car(x,y)
   pygame.display.update()
   clock.tick(24)
pygame.quit()
quit()

p、 s.1-查看有关操作系统的更多信息。这条路。

p. s.2-我正在使用MacOS。

 类似资料:
  • 我正试图在wordpress上制作一个响应性主题。当我使用桌面分辨率时,缩略图会100%调整到卡的分辨率,但当我将分辨率降低到移动设备时,它会变得比卡更大。为什么会这样? 我已经尝试添加Bootstrap4响应映像类。 预期: 现实: wordpress管理面板上配置的缩略图大小为350 x273px

  • 我在一个android应用中有一个RecycerView。我在做某种文件资源管理器。 当我在电脑上插入我自己的设备时,当我到达DCIM文件夹中的Camera文件夹时,它耗尽了内存。 有没有一种方法来加载大量的图像,并确保它们不会占用太多的内存空间。我用的是一部旧手机,我想让我的应用程序在上面工作。它是一个银河王牌II。

  • 通过人工智能技术对图像指定区域进行修复,不论是文字水印,还是logo水印。1秒恢复加水印前的样子。 图像修复API调用示例代码 github地址: https://github.com/picup-shop Python PHP Java Objective-c import requests requestBody = { { "base64": "/9j/4AAQSkZJRgABAQEA

  • 目标 在这一章当中, 我们将学习如何通过一种叫做 图像修复(inpainting)的方法来去除旧照片中的小噪音,划痕等等 我们将看到 OpenCV 中的功能。 基础知识 你们大多数人会在家里看到一些老旧的照片,上面有一些黑点,一些划痕等等。你有没有想过去修复它?我们不能简单地在绘画工具中抹去它们,因为它只是用白色的结构来代替黑色的结构,这是没有用的。在这些情况下,使用了一种称为图像修复的技术。基本

  • 问题内容: 实际上我不知道问题出在哪里。我认为这必须在创建TableLayout时进行。我不知道如何解决错误并使该应用程序正常工作。该程序显示错误“ java.lang.ArithmeticException:被零除”错误该程序具有EditText(edText),要求用户输入。它的类型是NUMBER。(这里r是edText的值)在EditText下方有一个Button(bt),它显示edText

  • 我正在做一个laravel instragram克隆网站,但突然经过一些发展当我运行php工匠服务这个错误发生。 PHP警告:require(I:\LARAVEL\LARAVEL instagram clone\vendor\composer/。/ralouphie/getallheaders/src/getallheaders.PHP):无法打开流:第66行的I:\LARAVEL\LARAVEL