首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TkMessageBox -无模块

TkMessageBox -无模块
EN

Stack Overflow用户
提问于 2016-07-04 09:52:46
回答 5查看 85.6K关注 0票数 39
代码语言:javascript
复制
import TkMessageBox

当我导入TkMessageBox时,它会显示messsge 'ImportError: No模块'TkMessageBox‘。

据我所知,im使用python 3.3.2和TK8.5。

我是使用了错误版本的python,还是导入了错误版本?

任何答案都是非常有用的。或者,在我使用的版本中是否有类似的东西?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2016-07-04 10:06:14

在Python3.x中,情况发生了一些变化:

代码语言:javascript
复制
   >>> import tkinter
   >>> import tkinter.messagebox
   >>>

我的意思是在Python2.x中我们所说的tkMessageBox变成了Python3.x中的tkinter.messagebox

票数 83
EN

Stack Overflow用户

发布于 2018-09-05 20:10:49

如果您不想更改Python2vsPython3的代码,可以将import用作:

代码语言:javascript
复制
try:
    from tkinter import messagebox
except ImportError:
    # Python 2
    import tkMessageBox as messagebox

::但是,由于Debian策略,tkinter位于Debian中的一个单独的包中,因此为了避免我现在使用的Python 2代码出现错误的回退:

代码语言:javascript
复制
import sys
if sys.version_info.major >= 3:
    from tkinter import messagebox
else:
    import tkMessageBox as messagebox

然后使用messagebox,如下所示,在任何版本中都有效:

代码语言:javascript
复制
messagebox.showerror("Error", "Message.")
票数 10
EN

Stack Overflow用户

发布于 2016-07-04 14:45:36

在Python2.x中,要导入,您可以说是import tkMessageBox。但是在Python3.x中,它被重命名为导入tkinter.messagebox

希望它有所帮助:)

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38181710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档