Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x “如何修复”;无法加载声音“;Python播放声音模块出错?_Python 3.x_Macos_Playsound - Fatal编程技术网

Python 3.x “如何修复”;无法加载声音“;Python播放声音模块出错?

Python 3.x “如何修复”;无法加载声音“;Python播放声音模块出错?,python-3.x,macos,playsound,Python 3.x,Macos,Playsound,不久前,我做了一个小项目,最近我认为在其中添加一些声音也会很酷。因此,我寻找了在Python3.x中播放声音的方法,并且Playsound得到了很好的评价。我有这样的设置:我有文件夹Python项目,里面有声音测试,但当我尝试播放我的音频文件(Test.wav)时,它抛出以下错误: Traceback (most recent call last): File "soundtest.py", line 2, in <module> playsound('test.wav'

不久前,我做了一个小项目,最近我认为在其中添加一些声音也会很酷。因此,我寻找了在Python3.x中播放声音的方法,并且
Playsound
得到了很好的评价。我有这样的设置:我有文件夹
Python项目
,里面有
声音测试
,但当我尝试播放我的音频文件(
Test.wav
)时,它抛出以下错误:

Traceback (most recent call last):
  File "soundtest.py", line 2, in <module>
    playsound('test.wav')
  File "/Users/rhett/env/lib/python3.7/site-packages/playsound.py", line 67, in _playsoundOSX
    raise IOError('Unable to load sound named: ' + sound)
OSError: Unable to load sound named: file:///Users/rhett/Desktop/Python Projects/Sound Test/test.wav
我收到了完全相同的错误:

Traceback (most recent call last):
  File "Sound Test/soundtest.py", line 2, in <module>
    playsound("/Users/Rhett/Desktop/Python\ Projects/Sound\ Test/test.wav")
  File "/Users/rhett/env/lib/python3.7/site-packages/playsound.py", line 67, in _playsoundOSX
    raise IOError('Unable to load sound named: ' + sound)
OSError: Unable to load sound named: file:///Users/Rhett/Desktop/Python\ Projects/Sound\ Test/test.wav
回溯(最近一次呼叫最后一次):
文件“Sound Test/soundtest.py”,第2行,在
playsound(“/Users/Rhett/Desktop/Python\Projects/Sound\Test/Test.wav”)
文件“/Users/rhett/env/lib/python3.7/site packages/playsound.py”,第67行,在playsoundOSX中
raise IOError('无法加载名为:'+声音的声音)
OSError:无法加载名为的声音:file:///Users/Rhett/Desktop/Python\项目/声音\测试/测试.wav

我找到了问题所在。 在
python3.7/site packages/playsound.py
文件中 开发人员尚未检查文件路径中的“”空格,因此文件路径中的空格字符会产生问题

无需更改playsound.py的代码即可快速修复。 替换文件夹名
~/Desktop/Python项目/Sound Test/Test.wav
~/Desktop/Python项目/SoundTest/Test.wav

(即,从文件夹名称中删除空格)


这将修复您的错误。

我已找到问题所在。 在
python3.7/site packages/playsound.py
文件中 开发人员尚未检查文件路径中的“”空格,因此文件路径中的空格字符会产生问题

无需更改playsound.py的代码即可快速修复。 替换文件夹名
~/Desktop/Python项目/Sound Test/Test.wav
~/Desktop/Python项目/SoundTest/Test.wav

(即,从文件夹名称中删除空格)


这将修复您的错误。

这允许它工作

s_musicfile = "/Users/xxxxxxxxxx/Desktop/play this file.mp3"

s_musicfile = s_musicfile.replace(" ", "%20")

playsound(s_musicfile)

这使它能够工作

s_musicfile = "/Users/xxxxxxxxxx/Desktop/play this file.mp3"

s_musicfile = s_musicfile.replace(" ", "%20")

playsound(s_musicfile)

文件与脚本位于同一文件夹中这一事实并不重要——相对路径是根据当前工作目录()解析的,而不是根据脚本的位置解析的。尝试使用绝对路径,看看会发生什么。刚尝试过,仍然会出现相同的错误。请编辑您的问题,然后使用绝对路径和确切的错误消息添加代码。注意:添加了macos标记,因为您的问题在某种程度上与macos有关(至少您没有更明确的错误消息).哦,是的:在调用playsound之前,您可以尝试在“soundtest”模块中打开文件(然后关闭它…),这样您至少可以知道问题是否真的是IOError,如果是,则知道是哪个IOError。文件与脚本位于同一文件夹中这一事实与此无关-根据当前工作目录()解析相对路径,不是针对脚本的位置。尝试使用绝对路径,看看会发生什么。刚尝试过,仍然会出现相同的错误。请编辑您的问题,然后使用绝对路径和确切的错误消息添加代码。注意:添加了macos标记,因为您的问题在某种程度上与macos有关(至少您没有更明确的错误消息)。哦,是的:在调用playsound之前,您可以尝试在“soundtest”模块中打开文件(然后关闭文件…),这样您至少可以知道问题是否真的是IOError,如果是,则知道是哪一个。