У меня ошибка при попытке создать звук с помощью pygame

#python #python-2.7 #pygame

#питон #пигмеи

Вопрос:

У меня ошибка при попытке добавить звук с помощью pygame. Я поместил все свои файлы .wav в один каталог с моим скриптом python. Это мой первый раз, когда я использую pygame, поэтому я совершенно ничего не знаю.

 import pygame

pygame.init()
pygame.mixer.init()

try:
    person_sound = pygame.mixer.Sound("person.wav")
    pygame.mixer.Sound.play(person_sound)

except:
    import traceback
    traceback.print_exc()
 

Вот что у меня есть:

 pygame 1.9.5
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
 File "G:DesktopSound TestSound-Test.py", line 7, in <module>
    person_sound = pygame.mixer.Sound("person.wav")
FileNotFoundError: No such file or directory.
[Finished in 1.345s]
 

Ответ №1:

Файл не обязательно должен находиться в том же каталоге, что и файл python, но он должен быть в рабочем каталоге приложения.

Разница может быть исследована с помощью:

 import os

currentWorkDir = os.getcwd()
print(currentWorkDir)

sourceFileDir = os.path.dirname(os.path.abspath(__file__))
print(sourceFileDir)

 

См. Также Атрибуты модуля, связанные с импортом.

Текущий рабочий каталог может быть изменен приложением, чтобы он совпадал с каталогом исходного файла python:

 import os

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