【问题标题】:python_pygame - FileNotFoundError: No such file or directorypython_pygame - FileNotFoundError:没有这样的文件或目录
【发布时间】:2021-03-07 13:38:40
【问题描述】:

您好,我正在关注 pygame 游戏代码,但收到以下错误并发布问题。当我运行它时,屏幕弹出然后立即消失。背景颜色也执行而不保存。 (Mac 操作系统)

import pygame

pygame.init() # 초기화 (반드시 필요)

#화면 크기  설정
screen_width = 480 # 가로 크기
screen_height = 640 # 세로 크기
screen = pygame.display.set_mode((screen_width, screen_height))

# 화면 타이틀 설정
pygame.display.set_caption("Kim Game") # 게임 이름

# 배경 이미지 블로오기
background = pygame.image.load(("r'C:/Users/king/Desktop/practica/pygame_basic/background.png"))

# 이벤트 루프 
running = True # 게임이 진행중인가?
while running:
    for event in pygame.event.get(): # 어떤 이벤트가 발생하였는가?
        if event.type == pygame.QUIT: # 창이 닫히는 이벤트가 발생하였는가?
            running = false # 게임이 진행중이 아님

    screen.blit(background, (0, 0)) # 배경 그리기

    pygame.display.update() # 게임화면을 다시 그리기      

# prgame 종료
pygame.quit

执行 FileNotFoundError: 没有这样的文件或目录。

【问题讨论】:

    标签: python macos pygame


    【解决方案1】:

    r 必须是前缀,而不是字符串的内容。它必须是r"string" 而不是"r'string"

    background = pygame.image.load(("r'C:/Users/king/Desktop/practica/pygame_basic/background.png"))

    background = pygame.image.load(r"C:/Users/king/Desktop/practica/pygame_basic/background.png")
    

    前缀为 'r' 或 'R' 的字符串称为原始字符串,并将反斜杠视为文字字符。见String and Bytes literals

    【讨论】:

    • 即使我改变它,它运行起来也不一样。
    • @InHwanKim 图片文件是否存在?文件扩展名是否正确(“png”)?
    • 是的,文件在那个位置。文件类型正确。("png")
    • @InHwanKim 不,不是。如果它在那里,您将不会收到此错误。仔细检查文件路径是否有错别字。
    • @InHwanKim 对不起,你错了。不可能是正确的。不要固执。将文件复制到不同的目录(例如r'c:\background.png' 并重试。如果成功,则原始文件路径不正确。
    【解决方案2】:

    此错误表示您的游戏目录中不存在一个文件,您必须在 pygame_basic 文件夹中添加一个名为 background.png 的图像

    【讨论】:

    • 即使我改变了它,它运行起来也不一样。
    • 你是什么意思 id 运行不一样?
    • 运行游戏时,游戏执行画面会弹出一会儿,然后关闭。
    猜你喜欢
    • 2021-06-24
    • 1970-01-01
    • 1970-01-01
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-03
    • 2020-11-06
    相关资源
    最近更新 更多