企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 用 Python 播放声音 > 原文: [https://pythonbasics.org/python-play-sound/](https://pythonbasics.org/python-play-sound/) 在 Python 上播放声音很容易。 有几个模块可以播放声音文件(`.wav`)。 这些解决方案是跨平台的(Windows,Mac,Linux)。 主要区别在于易用性和受支持的文件格式。 所有这些都应与 Python 3 一起使用。除非您指定路径,否则音频文件应与 python 程序位于同一目录中。 让我们探讨一下选项! ## 用 Python 播放声音 ### `playsound`模块 `playsound`模块是可以播放音频文件的跨平台模块。 它没有任何依赖性,只需在您的`virtualenv`中使用`pip`安装并运行即可! ```py from playsound import playsound playsound('audio.mp3') ``` 在平台上的实现是不同的。 它在 Windows 上使用`windll.winm`,在 Apple OS X 上使用`AppKit.NSSound`,在 Linux 上使用`GStreamer`。 我已经使用 Python 3.5.3。进行了测试。 这对 WAV 和 MP3 文件均适用。 ### `pydub` 您可以使用`pydub`模块播放声音文件。 可以在 PyPI 储存库中(随`pip`一起安装)。此模块可以在下面使用 PyAudio 和`ffmpeg`。 ```py from pydub import AudioSegment from pydub.playback import play song = AudioSegment.from_wav("sound.wav") play(song) ``` ### `tksnack` `tksnack`模块声音套件可以播放多个音频文件:WAV,AU,AIFF,MP3,CSL,SD,SMP 和 NIST/Sphere。 您可以使用包管理器进行安装:`apt install python3-tksnack`。 对于旧版本,有`python-tksnack`。 该模块取决于 Tkinter。 这意味着要使用此模块播放声音,您还必须导入 gui 模块 Tkinter。 该模块似乎暂时没有更新。 ```py from Tkinter import * import tkSnack root = Tk() tkSnack.initializeSnack(root) snd = tkSnack.Sound() snd.read('sound.wav') snd.play(blocking=1) ``` ### 本机播放器 您还可以在系统上本地播放声音。 这要求您在终端上安装某种音频播放器。 在 Linux 上,您可以使用`mpg123`。 这只是通过外部播放器播放 mp3 文件。 ```py # apt install mpg123 import os file = "file.mp3" os.system("mpg123 " + file) ``` [下载音频示例](https://social.pythonbasics.org/download-audio-examples/)