导入错误:没有名为 tkinter 的模块

导入错误:没有名为 tkinter 的模块

当我尝试使用此命令安装 tkinter 时:

sudo apt-get install python-tk

我收到此消息意味着它已经安装:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
python-tk is already the newest version.
The following package was automatically installed and is no longer required:
  libjpeg62
Use 'apt-get autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.

当我想导入它时,出现以下错误消息:

begueradj@begueradj-darwin:~/begueradj# python
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from tkinter import *
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named tkinter
>>> 

如何修复这个问题?

答案1

如果你正在运行 python ver 3.xx,你应该安装 tkinter for python3

sudo apt-get install python3-tk

这对我有用。

答案2

注意 Tkinter 在 Python 3 中已重命名为 tkinter。(来源:https://stackoverflow.com/questions/25905540/importerror-no-module-named-tkinter)。因此,在代码中,请使用 import tkinter 而不是 import Tkinter。此外,在代码中,如果出现 Tkinter,请使用 tkinter 小写字母代替。

答案3

要使用 Tkinter,您需要做的就是导入一个模块:

import Tkinter

或者更常见的是:

from Tkinter import *

因此,只需将您的导入行更改为import Tkinter例如:

$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
>>> Tkinter.TkVersion
8.6
>>> 

来源:https://docs.python.org/2/library/tkinter.html#tkinter-modules

答案4

我最近也对 Tkinter 感兴趣。事实证明,许多 Linux 发行版默认不提供 Tkinter 软件包。(FWIW,即使您运行官方 Python docker 镜像,该说法仍然正确,尽管 Tkinter 是标准 Python 库的一部分。)

为了完整起见,这是您手动安装 Tkinter 的方式。

Python 2 Python 3
如果你的发行版的包管理器是 apt apt install python2-tk apt install python3-tk
如果你使用 Alpine,其包管理器是 apk apk add python2-tkinter apk add python3-tkinter
在你的 Python 脚本中,你可以这样做 from Tkinter import * from tkinter import *

相关内容