No module named _tkinter, please install the python-tk package 解决方法总结

Posted dreamcho

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了No module named _tkinter, please install the python-tk package 解决方法总结相关的知识,希望对你有一定的参考价值。

  0. 前言

  在ipython环境中,要用到matlotlib库,运行.py文件时,提示以下错误:

  No module named _tkinter, please install the python-tk package。

  配置环境为ubuntu16.04。本文目的为解决上述问题。

  1. Tkinter问题描述

  按照普通的思路,上述错误出现的原因可能时时python环境缺少tk的包,于是进行输入命令:sudo apt-get install python-tk

  但也提示错误:tcl8.6.8,tk8.6.8 not found。

Google一下,tcl为“工具控制语言(Tool Command Language)”的缩写,其面向对象为otcl语言。Tk 是 Tcl“图形工具箱”的扩展,它提供各种标准的 GUI 接口项,以利于迅速进行高级应用程序开发。

  2. 安装tcltk

  按照1中提示,下载tcl和tk:http://www.tcl.tk/software/tcltk/download.html。 此时最新版本为8.6.8.

 (1) 安装tcl,依次执行下面命令:

  tar -zvxf tar -xzvf tcl8.6.8-src.tar.gz 

  cd tcl8.6.1/unix 

  ./configure 

  make

  sudo install make

  (2)如法炮制,安装tk8.6.8:

  tar -xzvf tk8.6.8-src.tar.gz 

  cd tk8.6.8/unix 

  ./configure 

  make

  sudo install make

  但执行到make命令时提示错误:没有X11/Xlib.的文件或目录,见下图。

  技术分享图片

   3. 搜索X11/Xlib.h文件

  按照上图的提示,缺失 X11/Xlib.h文件,于是执行命令:

  sudo apt-get install libx11-dev

  出现以下提示:

  技术分享图片

 

  提示信息为:libx11-dev这个package可能missing。

  4. 更换source(源)

  按图索骥,查找libx11-dev,看看系统中有没有这个libx11-dev这个package:

  apt-cache search Xlib

  但根本找不到Xlib这个文件:

   技术分享图片

  戏剧地发现马云家的源根本没有libx11-dev这个package!!! 于是更换Tsinghua University的源,具体更换源的方法请在网上找,这里不细说。

  5. 找到libx11-devpackage

  更换源后,再次使用命令:  apt-cache search Xlib

  终于找到了libx11-dev。

   技术分享图片

  6.  重新安装tk8.6.8

  兜了这么大的圈,再重新回到2中安装tk8.6.8的问题,重新安装tk8.6.8:

  tar -xzvf tk8.6.8-src.tar.gz 

  cd tk8.6.8/unix 

  ./configure 

  make

  sudo install make

  7. 最后安装Tkinter

  再次安装Tkinter的package:sudo apt-get install python-tk

  这次终于没错误提示了。

  Ipython环境中运行以下.py文件

  技术分享图片

   

  Matplotlib和Tkinter成功导入。

  Okay,问题终于解决!

以上是关于No module named _tkinter, please install the python-tk package 解决方法总结的主要内容,如果未能解决你的问题,请参考以下文章

ImportError: No module named '_tkinter', please install the python3-tk package

无法使用 pyenv 安装运行 IDLE:`Python 可能没有为 Tk 配置``ModuleNotFoundError: No module named _tkinter'

No module named _tkinter, please install the python-tk package 解决方法总结

Python下"No module named _tkinter"问题解决过程总结

Python的Bug解决No module named Tkinter

Python 2.7 - CentOS 7 - ImportError: No module named Tkinter