pygame FileNotFoundError: "Tiada fail atau direktori sedemikian"
Dalam Python dengan pygame, anda mungkin menghadapi ralat di mana pygame tidak boleh membuka sumber fail disebabkan oleh FileNotFoundError. Mesej ralat khusus yang anda berikan menunjukkan bahawa fail imej bernama "test_bg.jpg" tidak ditemui.
Kunci untuk menyelesaikan ralat ini terletak pada memastikan laluan fail sumber dalam kod anda sejajar dengan semasa direktori kerja atau direktori yang mengandungi fail Python. Secara lalai, direktori kerja mungkin berbeza daripada direktori fail Python, yang membawa kepada percubaan yang gagal untuk mendapatkan semula sumber.
Terdapat beberapa pendekatan untuk menangani isu ini:
1. Menetapkan Direktori Kerja:
import os os.chdir(os.path.dirname(os.path.abspath(__file__)))
Coretan kod ini menetapkan direktori kerja ke direktori yang sama seperti fail Python.
2. Menggunakan Laluan Fail Mutlak:
import pygame pygame.init() BG = pygame.image.load("/path/to/test_bg.jpg")
Di sini, anda menentukan laluan lengkap ke fail imej, memastikan pygame boleh mengesannya dengan betul.
3. Mendapatkan semula Laluan Fail:
import os # Get the file's directory sourceFileDir = os.path.dirname(os.path.abspath(__file__)) # Join the file path filePath = os.path.join(sourceFileDir, 'test_bg.jpg') BG = pygame.image.load(filePath)
Dengan menyertai laluan fail relatif dengan direktori fail, anda boleh mendapatkan laluan fail mutlak.
4. Menggunakan Pathlib:
import pathlib # Get the file's path filePath = pathlib.Path(__file__).resolve().parent / 'test_bg.jpg' BG = pygame.image.load(filePath)
Pathlib menyediakan kaedah yang mudah untuk mengendalikan laluan fail, termasuk menyelesaikan laluan mutlak dan menyertai direktori.
Mana-mana penyelesaian yang anda pilih, pastikan laluan ke fail sumber adalah betul berbanding dengan direktori kerja semasa atau lokasi fail Python untuk mengelakkan FileNotFoundErrors.
Atas ialah kandungan terperinci Bagaimana untuk Memperbaiki FileNotFoundError Pygame: 'Tiada fail atau direktori sedemikian'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!