我不断收到此错误:无法打开“文件”

时间:2019-01-16 16:49:38

标签: pygame error-code

我正在尝试使用pygame显示图像,但出现此错误:

  

回溯(最近通话最近):     在第28行中输入文件“ H:/profile/desktop/untitled/venv/Scripts/AhjaiyGame.py”       开始= pygame.image.load(os.path.join(文件夹,“ wecvguh.png”))   pygame.error:无法打开H:\ profile \ desktop \ untitled \ venv \ Scripts \ wecvguh.png

代码块:

import sys
import random
import os
import subprocess
import pygame
pygame.init()
GUI = pygame.display.set_mode((800,600))
pygame.display.set_caption("The incredible guessing game")
x = 284
y = 250
width = 68
length = 250
run = True
while run:
 for event in pygame.event.get():
    if event.type == pygame.QUIT:
        run =False
 if event.type == pygame.KEYDOWN:
  command = "python AhjaiyCPT.py"
  subprocess.call(command)


 pygame.display.update()


folder = os.path.dirname(os.path.realpath(__file__))

start = pygame.image.load(os.path.join(folder, "wecvguh.png"))
   def img(x,y):
        gameDisplay.blit(start, (x,y))
    while run:
        gameDisplay.fill(white)
        start(x, y)


pygame.quit()

1 个答案:

答案 0 :(得分:1)

该代码具有两个“运行”循环,因此它永远不会到达第二个循环。

代码的缩进感到困惑-可能是从粘贴到SO?绝大多数程序员使用4个空格来缩进。这可能是一个很好的习惯。

该代码还在每次循环迭代时都加载了“开始”映像,这是不必要的(除非它在磁盘上已更改,在这种情况下,请使用os.stat()在重新加载之前检查更改)。

重新设计的主循环:

folder = os.path.dirname(os.path.realpath(__file__))
start  = pygame.image.load(os.path.join(folder, "wecvguh.png"))

run = True
while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False
        if event.type == pygame.KEYDOWN:
            command = "python AhjaiyCPT.py"
            subprocess.call(command)

    gameDisplay.fill(white)
    gameDisplay.blit(start, (x,y))
    pygame.display.update()

pygame.quit()