Tom*_*dge 22 python tk-toolkit tkinter python-3.x
import TkMessageBox
Run Code Online (Sandbox Code Playgroud)
当我输入TkMessageBox它显示messsge "导入错误:没有模块名为'TkMessageBox’.
据我所知使用python 3.3.2和Tk 8.5.
我使用错误版本的python或导入错误吗?
任何答案都非常有用.或者在我使用的版本中有类似的东西吗?
Bil*_*adj 48
在Python3.x中,事情发生了一些变化:
>>> import tkinter
>>> import tkinter.messagebox
>>>
Run Code Online (Sandbox Code Playgroud)
我的意思是我们tkMessageBox在Python2.x tkinter.messagebox中调用的内容变成 了Python3.x.
如果您不想更改 Python 2 与 Python 3 的代码,您可以使用 import 为:
try:
from tkinter import messagebox
except ImportError:
# Python 2
import tkMessageBox as messagebox
Run Code Online (Sandbox Code Playgroud)
然后按如下方式使用消息框将适用于任一版本:
messagebox.showerror("Error", "Message.")
Run Code Online (Sandbox Code Playgroud)
在 Python 2.x 中,要导入,您会说import tkMessageBox. 但是在 Python 3.x 中,它被重命名为 import tkinter.messagebox。
希望它有所帮助:))