VS 代码 Pygame 无法加载 mp3 音乐

问题描述

我有以下代码在 Python IDle 中运行良好,但是在 VS 代码中运行时我无法让它播放 mp3 文件

from pygame import mixer
mixer.init()
mixer.music.load('Sound.mp3')
mixer.music.play(-1)

它抛出此错误消息:

pygame 2.0.1 (SDL 2.0.14,Python 3.7.1)
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
  File "c:/Users/ilopezdeveloper/start.py",line 9,in <module>
    mixer.music.load('Sound.mp3')
pygame.error: Couldn't open 'Sound.mp3'

我进行了一些研究,但找不到任何可以解释问题所在的信息。最奇怪的是,如果我用 Python IDlE 打开文件,我可以听到 sound.mp3 文件播放没有问题。 有谁知道问题是什么?谢谢。

解决方法

正如@Niko B 在上述评论中所解释的那样,并且其他人可以使用此问题的答案,该问题与工作目录有关。 IDlE 的默认工作目录是运行文件所在的目录。对于 VS 代码,默认工作目录是工作区文件夹。如果没有打开的工作区,则将 c:\users\your_user_name 作为工作目录。

解决方案:将工作目录更改为要运行的文件所在的文件夹。通过将工作区设置为该文件夹或将 JSON 中的“terminal.integrated.cwd”设置为该目录。