问题描述
我正在为此使用pycharm,但似乎无法弄清楚该错误的解决方法。
Exception in Tkinter callback
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/tkinter/__init__.py",line 1883,in __call__
return self.func(*args)
File "/Users/syedrishad/PycharmProjects/OpenCvpython/venv/Text To Speech.py",line 44,in Text_to_speech
playsound('DataFlair.mp3')
File "/Users/syedrishad/OpenCvpython/lib/python3.8/site-packages/playsound.py",line 55,in _playsoundOSX
from AppKit import NSSound
ModuleNotFoundError: No module named 'AppKit'
这是代码:
## import libraries
from tkinter import *
from gtts import gTTS
from playsound import playsound
################### Initialized window####################
root = Tk()
root.geometry('350x300')
root.resizable(0,0)
root.config(bg = 'ghost white')
root.title('DataFlair - TEXT_TO_SPEECH')
##heading
Label(root,text = 'TEXT_TO_SPEECH',font='arial 20 bold',bg ='white smoke').pack()
Label(root,text ='DataFlair',font ='arial 15 bold',bg = 'white smoke').pack(side = BottOM)
#label
Label(root,text ='Enter Text',bg ='white smoke').place(x=20,y=60)
##text variable
Msg = StringVar()
#Entry
entry_field = Entry(root,textvariable =Msg,width ='50')
entry_field.place(x=20,y=100)
###################define function##############################
def Text_to_speech():
Message = entry_field.get()
speech = gTTS(text = Message)
speech.save('DataFlair.mp3')
playsound('DataFlair.mp3')
def Exit():
root.destroy()
def Reset():
Msg.set("")
#Button
Button(root,text = "PLAY",font = 'arial 15 bold',command = Text_to_speech,width =4).place(x=25,y=140)
Button(root,text = 'EXIT',command = Exit,bg = 'OrangeRed1').place(x=100,text = 'RESET',font='arial 15 bold',command = Reset).place(x=175,y =140)
#infinite loop to run program
root.mainloop()
对此我感到很困惑,其他人的解决方案对我不起作用。任何帮助将不胜感激。我已经尝试修复了一个星期。哦,这不是我的代码。我正在上一个教程,这是我一直在从事的项目之一。
解决方法
您尚未安装AppKit
。这就是为什么口译员对此抱怨。
您必须安装该软件包,有两种可能:
-
在终端类型
pip install AppKit
-
在PyCharm中执行以下操作: 首选项->项目解释器->单击“ +”->输入
AppKit
->安装软件包
瞧,它应该现在可以正常工作了。