求助解决ModuleNotFoundError: No module named 'playsound'报错问题
解决
ModuleNotFoundError: No module named 'playsound' 问题 一、先修正代码中的调用错误
你的代码里对playsound的调用方式有误,playsound模块的播放函数需要通过模块名调用,或者直接导入该函数:
- 方式一:修改调用语句
def song(): playsound.playsound("lights.mp3") # 补充模块前缀 - 方式二:修改导入语句
这样原有的from playsound import playsound # 直接导入播放函数playsound("lights.mp3")调用就可以正常运行。
二、确保模块安装到当前使用的Python环境
即使卸载了Python2,系统中可能存在多个Python3版本,导致你安装的playsound不在当前运行代码的解释器环境中:
- 查看当前代码使用的Python解释器路径:
- Linux/macOS终端运行:
which python3 - Windows命令提示符运行:
where python
- Linux/macOS终端运行:
- 使用对应版本的pip安装模块:
- Linux/macOS:
python3 -m pip install playsound - Windows:
py -3 -m pip install playsound
- Linux/macOS:
- 如果使用了虚拟环境,务必先激活虚拟环境再执行安装命令。
三、尝试安装兼容版本的playsound
最新版playsound可能存在兼容性问题,可指定安装稳定版本:
python3 -m pip install playsound==1.2.2
四、修复弹窗自定义按钮的错误
你的InitialMessage函数中,尝试在messagebox.showinfo里添加自定义按钮是无效的,messagebox的标准方法不支持自定义按钮。可以改用自定义顶层窗口实现:
def InitialMessage(): name = name_Tf.get() mood = mood_Tf.get() if mood == "happy": # 创建自定义弹窗 popup = Toplevel(window) popup.title("message") Label(popup, text=f"""Hi! {name}, welcome. may I interest you with some music?""", font=("Comic Sans", 12)).pack(pady=10) Button(popup, text="yes", command=song, font=("Comic Sans", 15)).pack(pady=5)
内容的提问来源于stack exchange,提问作者Jahaziel Duran
相关产品推荐
相关产品推荐

