我在 Ubuntu 16.04 上有 Python 3.8。
我安装了 python3-tk(在 matplotlib 中显示绘图需要它):
Reading package lists... Done
Building dependency tree
Reading state information... Done
python3-tk is already the newest version (3.5.1-1).
0 upgraded, 0 newly installed, 0 to remove and 12 not upgraded.
和python3.8-tk:
Reading package lists... Done
Building dependency tree
Reading state information... Done
python3.8-tk is already the newest version (3.8.2-1+xenial1).
0 upgraded, 0 newly installed, 0 to remove and 12 not upgraded.
但是没有找到:
$ python3.8 -m tkinter
Traceback (most recent call last):
File "/usr/local/lib/python3.8/runpy.py", line 184, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "/usr/local/lib/python3.8/runpy.py", line 143, in _get_module_details
return _get_module_details(pkg_main_name, error)
File "/usr/local/lib/python3.8/runpy.py", line 110, in _get_module_details
__import__(pkg_name)
File "/usr/local/lib/python3.8/tkinter/__init__.py", line 36, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
安装它的正确方法是什么?
如果您使用 apt 安装了 python3.8(通过 ppa:deadsnakes/ppa),也可以使用 apt 安装它,库的名称是
python3.8-tk
.就我而言,它解决了问题。例如,现在我可以在需要 tkinter 的 python3.8 中使用 matplotlib。
重新编译并重新安装 python3.8,使用 tcl、tk 包含和库指定文件夹的路径。
以下一种方式编辑
./configure
文件:替换...
下一行:apt
通过 16.04 安装的Python 3.8pyenv
不包括 tkinter,因为我认为或者存在一些不允许导入它的错误。只有重建有帮助。以前我使用的是内置 Python 3.8 版本的 20.04,它支持 tkinter,只安装了额外的包,就像 16.04 上的 Python 3.5 一样。还需要安装 Ankur A Sharma 所说的 python3.8-tk。我忘记提了。但这对于 16.04 来说是不够的,至少在我的情况下是这样。
OP评论的附加要求:
打开终端类型命令
''pip3 安装 tkintertable''
根据您的 python 版本,它可以是 pip 或 pip3
在 Ubuntu 16.04 上,(卸载 python3.8 和 tkinter,并)使用 ppa 安装:
在 Ubuntu 18.04 及更高版本上: