Maison >développement back-end >Tutoriel Python >Comment corriger « FileNotFoundError » lors du chargement de ressources dans Pygame ?

Comment corriger « FileNotFoundError » lors du chargement de ressources dans Pygame ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-17 10:05:21531parcourir

How to Fix

Chargement de ressources avec Pygame : résolution de "FileNotFoundError"

Lorsque vous essayez de charger des ressources externes telles que des images ou des sons dans Pygame, vous pouvez rencontrer l'erreur "FileNotFoundError : aucun fichier ou répertoire de ce type". Ce problème survient généralement en raison de chemins de fichiers de ressources incorrects, en particulier lorsque le chemin est relatif au répertoire de travail actuel.

Solution : définition du répertoire de travail ou création d'un chemin de fichier absolu

Pour résoudre cette erreur, assurez-vous que le répertoire de travail est défini sur l'emplacement où résident vos fichiers de ressources. Ceci peut être réalisé avec le module os :

import os

os.chdir(os.path.dirname(os.path.abspath(__file__)))

Alternativement, vous pouvez créer un chemin de fichier absolu en combinant le chemin du répertoire du fichier et le nom du fichier :

filePath = os.path.join(sourceFileDir, 'test_bg.jpg')
surface = pygame.image.load(filePath)

Alternative Solution utilisant pathlib

Le module pathlib propose une autre approche pour définir le répertoire de travail ou créer un fichier absolu paths :

Définition du répertoire de travail :

import os, pathlib

os.chdir(pathlib.Path(__file__).resolve().parent)

Création d'un chemin de fichier absolu :

import pathlib

filePath = pathlib.Path(__file__).resolve().parent / 'test_bg.jpg'
surface = pygame.image.load(filePath)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn