重要错误:没有名为“Tkinter”的模块

2024-05-21 01:11:57 发布

您现在位置:Python中文网/ 问答频道 /正文

出于某种原因,我不能使用Tkintertkinter模块。 在python shell中运行以下命令之后

import Tkinter

或者

import tkinter

我搞错了

ModuleNotFoundError: No module named 'Tkinter'

或者

ModuleNotFoundError: No module named 'tkinter'

原因是什么?我们如何解决?


Tags: 模块noimport命令tkinter原因shellnamed
3条回答

在使用Python 3时,模块已重命名为tkinter,如documentation中所述:

Note Tkinter has been renamed to tkinter in Python 3. The 2to3 tool will automatically adapt imports when converting your sources to Python 3.

你可能需要安装它

sudo apt-get install python3-tk 

我用Tkinter已经有一段时间了。你为什么不试试这个让我知道它是否有效?

try:
    # for Python2
    from Tkinter import *   ## notice capitalized T in Tkinter 
except ImportError:
    # for Python3
    from tkinter import *   ## notice lowercase 't' in tkinter here

这里是引用link,这里是doc

最好按建议检查版本here

if sys.version_info[0] == 3:
    # for Python3
    from tkinter import *   ## notice lowercase 't' in tkinter here
else:
    # for Python2
    from Tkinter import *   ## notice capitalized T in Tkinter

否则您将得到错误ImportError: No module named tkinter

对于在Python 3.7.4中使用VSCode或PyCharm的Windows 10,请确保在安装中勾选了Tk。我试着用上/下tk所有的变体来做import tkinter as xyz,但没有成功。

有效的方法是:

import tkinter
import _tkinter
tkinter._test()

一个实际的例子:

import tkinter
import _tkinter

HEIGHT = 700
WIDTH = 800

root = tkinter.Tk()

canvas = tkinter.Canvas(root, height = HEIGHT, width=WIDTH)
canvas.pack()

frame = tkinter.Frame(root, bg='red')
frame.pack()

root.mainloop()

相关问题 更多 >