【问题标题】:Install tkinter for Python为 Python 安装 tkinter
【发布时间】:2011-06-14 14:30:39
【问题描述】:

我正在尝试import Tkinter。但是,我收到一条错误消息,指出尚未安装 Tkinter

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

我可能可以使用突触管理器安装它(可以吗?),但是,我必须在我编程的每台机器上安装它。是否可以将 Tkinter 库添加到我的工作区并从那里引用它?

【问题讨论】:

  • 解决方案建议的答案对你有用吗?它不适合我:E: Unable to locate package python-tk 有人有这个问题吗?
  • 对于它的价值,如果您收到此错误 matplotlib,并不总是需要安装 Tkinter。导入matplotlib 后立即调用matplotlib.use('Agg')
  • 如果不想安装tkinter,可以使用import matplotlib matplotlib.use('agg') import matplotlib.pyplot as plt
  • 如果你使用python3.6sudo apt-get install python3.6-tk
  • 我正在使用 python 3.8,但我仍然无法导入 Tkinter:尝试了 sudo apt-get install python-tk 和 sudo apt-get install python3.8-tk 但无法在 pycharm 中看到它(使用虚拟环境)读取包列表...完成构建依赖树读取状态信息...完成注意,选择'python3-tk'而不是'python3.8-tk' python3-tk已经是最新版本(3.6.9 -1~18.04)。 0 个已升级,0 个新安装,0 个要移除,19 个未升级。

标签: python linux tkinter installation


【解决方案1】:

ntk 用于您的桌面应用程序,它在 tkinter 之上运行,以更少的编码为您提供更多功能和美观的用户界面。

通过pip install ntk安装ntk

这里有正确的文档:ntk.readthedocs.io

编码愉快。

【讨论】:

    【解决方案2】:

    安装python版本3.6+ 并打开你的文本编辑器 或ide 编写这样的示例代码:

    from tkinter import *
    
    root = Tk()
    root.title("Answer")
    
    root.mainloop()
    

    【讨论】:

      【解决方案3】:

      你只需要import它:

      import tkinter as tk
      

      然后你将使用短语tk,它更短更容易。

      另外,我也更喜欢使用消息框:

      from tkinter import messagebox as msgbx
      

      这里有一些你可以使用它的方法。

      # make a new window
      window = tk.Tk()
      
      # show popup
      msgbx.showinfo("title", "This is a text")
      

      【讨论】:

      • 在尝试import 之前,需要先安装它。问题是关于安装
      • 安装,打开终端应用程序,输入:pip3 install tkinter
      【解决方案4】:

      对于 Python 2.7:

      正如它所说的here

      您无需下载 Tkinter - 它是所有 Python 发行版不可或缺的一部分(不支持 Tcl/Tk 的平台的二进制发行版除外)。

      在我的情况下,在 Windows 上,帮助重新安装 Python 发行版。很久以前,我没有勾选“Tcl/Tk”安装功能。重新安装后,一切正常,我可以import _tkinterimport Tkinter

      【讨论】:

        【解决方案5】:

        我认为您必须将 tkinter 安装到您的代码存储库目录中。

        对于 liunx(Ubuntu 或 debian),打开终端。 通过在终端上运行此命令来安装 tkinter 包。

        sudo apt-get install python-tk 
        

        在终端上安装好python-tk包后,新建一个python文件。将其命名为 filename.py。

        在filename.py的第一行,将tkinter导入python文件。

        import tkinter
        
        

        要创建具有不同字段的 tkinter,您可以使用本教程。 https://www.delftstack.com/tutorial/tkinter-tutorial/

        tkinter 的文档可以在这里找到: https://docs.python.org/3.7/library/tkinter.html

        希望对您有所帮助。请询问我们您是否仍然被卡住。 请记住在实现之前在 tkinter 上的 GUI 中确定您需要什么。绘制 GUI 外观的线框有助于对 Tkinter GUI 进行编码。

        【讨论】:

          【解决方案6】:

          对于 Fedora >= 25 和 python >= 3,我们可能需要包含 Tkinter 的依赖项

          sudo dnf install python3-tkinter

          【讨论】:

            【解决方案7】:

            对于 ubuntu 上的 python 3.7,我必须使用 sudo apt-get install python3.7-tk 才能使其工作

            【讨论】:

              【解决方案8】:

              对于python3用户,通过以下命令安装python3-tk包 sudo apt-get install python3-tk

              【讨论】:

                【解决方案9】:

                Tkinter 是 python 的 GUI 模块。您可以使用它在 python 中制作基于 GUI 的应用程序。 Tkinter 提供了几个 GUI 小部件,如按钮、菜单、画布、文本、框架、标签等来开发桌面应用程序。虽然 Tkinter 非常流行并且包含在 windows、python 的 macosx 安装中,但也有其他选择,如 pyQt、wxPython。 ..

                在本教程中,我们将了解如何在 linux 上安装它并通过示例使用它。

                首先,检查你是否安装了python并检查它的版本

                打开终端并输入 python。如果已安装,则会显示版本、帮助等信息...检查您的版本(我的是 python 2.7.9)

                aman@vostro:~$ python Python 2.7.9(默认,2015 年 4 月 2 日,15:33:21) [GCC 4.9.2] 在 linux2 上 输入“help”、“copyright”、“credits”或“license”了解更多信息。

                如果你没有 python 然后安装它 sudo apt-get install python

                如果你想安装 python 3 然后输入以下内容。如果你是新手,我会推荐 python 2 而不是 python 3。Python 2 仍然非常流行,许多应用程序都是在它上面制作的。在 ubuntu 上 python2 仍然是默认的 sudo apt-get install python3

                最后,安装 Tkinter

                sudo apt-get install python-tk
                

                对于python 3

                sudo apt-get install python3-tk
                

                如何使用它

                现在,让我们检查一下 Tkinter 是否在这个小例子中运行良好

                打开你的终端并进入你的python shell。 蟒蛇

                对于python3 python3

                如果python安装正确,你会得到一个>>>提示。 aman@vostro:~$ python

                Python 2.7.9 (default, Apr  2 2015, 15:33:21)
                [GCC 4.9.2] on linux2
                
                Type "help", "copyright", "credits" or "license" for more information.
                >>>
                

                现在导入 Tkinter 模块。如果正确导入,它不会显示任何错误。注意:确保在 python2 中键入 Tkinter(不是 tkinter),在 python3 中键入 tkinter(不是 Tkinter)。

                >>>import Tkinter
                

                现在,只是为了检查您是否可以使用 Tkinter 创建一个空窗口。

                >>>Tkinter.Tk()
                

                【讨论】:

                  【解决方案10】:

                  其实你只需要使用下面的方式来安装python3的tkinter即可:

                  sudo apt-get install python3-tk
                  

                  另外,对于 Fedora 用户,请使用以下命令:

                  sudo dnf install python3-tkinter
                  

                  【讨论】:

                  • 谢谢!它实际上需要 python3-tk,而不是 python-tk。
                  • 如果你和我一样是 Linux 新手,请注意,如果 apt-get 在查找/安装 python3-tk 时遇到问题,请先尝试运行 sudo apt-get update。在我的 32 位 Linux Mint 18.3 系统中,Synaptic 和 apt-get 似乎比我想象的更频繁地需要它......
                  • 我得到 python3-tk 已经是最新版本(3.5.1-1),当我导入 tkinter 时我仍然得到: ModuleNotFoundError: No module named 'tkinter' I Use(Python 3.7.5)
                  • 解决方法:sudo apt-get install python3.7-tk
                  【解决方案11】:

                  Fedora 第 25 版(二十五)

                  dnf install python3-tkinter
                  

                  这对我有用。

                  【讨论】:

                  • 这在 f26 上也存在。
                  • @mikeymop,我并不是说它不适用于 F26。而是希望对工作条件非常明确和具体。
                  【解决方案12】:

                  如果像我一样,由于您在 I.S. 的好朋友,您在网络上没有 root 权限,并且您正在本地安装,那么上述方法可能会遇到一些问题。

                  我在 Google 上花了很长时间 - 但最终,这很容易。

                  http://www.tcl.tk/software/tcltk/download.html 下载 tcl 和 tk 并在本地安装它们。

                  要在 Linux 上本地安装(我是在我的主目录中安装的),请为 tcl 和 tk 提取 .tar.gz 文件。然后打开 ./unix 目录中的自述文件。我跑了

                  cd ~/tcl8.5.11/unix
                  ./configure --prefix=/home/cnel711 --exec-prefix=/home/cnel711
                  make
                  make install
                  
                  cd ~/tk8.5.11/unix
                  ./configure --prefix=/home/cnel711 --exec-prefix=/home/cnel711 --with-tcl=/home/cnel711/tcl8.5.11/unix
                  make
                  make install
                  

                  这可能看起来很痛苦,但文件很小,安装速度非常快。

                  然后在您的 python 安装目录中重新运行 python setup.py buildpython setup.py install - 它应该可以工作。它对我有用 - 我现在可以将 Tkinter 等导入到我心中的内容 - yipidy-yay。整个下午都花在这上面 - 希望这篇笔记能帮助其他人免于痛苦。

                  【讨论】:

                  • 嗨,西蒙。我刚从linux上下来。我需要在本地安装 tcl/tk 和 python。我想将它们安装到“/home/cnel711/install/”。安装 tcl/tk.我应该为 Python 设置路径吗?如何。我还使用 ./configure 来安装 python。谢谢
                  • 嗨,我已经在本地安装了 tcl/tk,并且我重建了 python。但是,在构建python(本地)时,我收到一个错误:libtk8.6.so:无法打开共享对象文件:没有这样的文件或目录,并且模块 _tkinter 未能构建。我什至尝试使用--with_tcltk_libs 设置我的 tcl/tk 库的路径,但这没有帮助。
                  • 你指的是什么 setup.py 文件?我在哪里可以找到那个?我迷路了。
                  • @DavidMerinos,我想setup.py 文件可以在您最初安装 Python 的源目录中找到 - 这是我找到它的地方。如果你没有删除它但忘记了这个目录在哪里,你可以在你的 shell 的任何地方运行 find ~ -type f -name setup.py 命令。
                  • 我的机器上有超过 100 个名为 setup.py 的文件。你说的是哪一个?
                  【解决方案13】:

                  您将需要该包及其依赖项。

                  既然您提到了 synaptic,那么您必须使用基于 Debian 的系统。获得所需的一种方法:

                  sudo apt-get install python-tk
                  

                  【讨论】:

                  • E: Unable to locate package python-tk 有人遇到过这个问题吗?
                  • @CharlieParker 它在主要的 Ubuntu 存储库中:packages.ubuntu.com/python-tk
                  • @CharlieParker 是的 - 我已经解决了,还没有解决
                  【解决方案14】:

                  macOS 上的情况还是a bit complicated,但是可行:

                  Python.org 强烈建议下载 tkinter from ActiveState,但您应该首先阅读 their license(提示:不要重新分发或需要支持)。

                  当打开下载时,OS X 10.11 拒绝它,因为它找不到我的收据:“ActiveTcl-8.6.pkg 无法打开,因为它来自身份不明的开发者”。

                  我关注了OSXDaily fix from 2012,它建议从任何地方允许。但是 OS X 现在添加了一个“仍然打开”选项以允许(例如)Active-Tcl 作为一次性使用,并且“任何地方”选项已经超时。

                  【讨论】:

                    【解决方案15】:

                    在我的情况下也需要安装tk-devel

                    yum install -y tkinter tk-devel

                    安装这些并重建 python

                    【讨论】:

                      【解决方案16】:

                      在本地安装 Tkinter 以与系统提供的 Python 一起使用并不容易。您可以从源代码构建它,但这通常不是您显然正在运行的基于二进制包的发行版的最佳主意。

                      在您的机器上apt-get install python-tk 更安全。 (适用于 Debian 衍生发行版,例如 Ubuntu;请参阅您的软件包管理器和其他发行版上的软件包列表。)

                      【讨论】:

                      • @BryanOakley:当然可以。海报似乎有一个基于 apt 的 Linux 机器,因此是答案。这看起来像一个狭窄的问题。我没想到这个答案会得到这么多的支持。
                      • 对于 python3 apt-get install python3-tk 在 ubuntu 15.04 发表此评论时
                      • 我也为 python3.4 和 ubuntu 15.04 做过:apt-get install python3-tk
                      • 刚刚在 Mint18(源自 16.04 Ubuntu)上做了这个练习,结果很好。 sudo apt install -y python3-tk
                      • 如何从源代码安装 tkinter?我有 tcl/tk,使用 wish 验证。我找不到 tkinter 的源 tarball。
                      【解决方案17】:

                      如果您使用的是Python 3,那么您必须按如下方式安装:

                      sudo apt-get update
                      sudo apt-get install python3-tk
                      

                      Python 2 (python-tk) 的 Tkinter 与 Python 3 的 (python3-tk) 不同。

                      【讨论】:

                      • 为什么要先升级再升级?这将影响更多的软件,而不仅仅是 python/tk。
                      • @MatthewRead 我改变了它。我不小心把它放在那里了,你是对的。我与Tk的安装过程没有任何关系。
                      • E: Unable to locate package python3-tk你有这个吗?
                      • @CharlieParker python3-tk 存在于 XUbuntu 16.04 包管理器中。
                      【解决方案18】:

                      对于 Arch Linux 用户来说,有点像

                      sudo pacman -S tk
                      

                      【讨论】:

                      • 仍然遇到一些问题_tkinter.TclError: expected integer but got "Sans"
                      【解决方案19】:

                      有 _tkinter 和 Tkinter - 两者都适用于 Py 3.x 但为了安全起见——下载 Loopy 并将你的 python 根目录(如果你使用像 PyCharms 这样的 IDE)更改为 Loopy 的安装目录。你会得到这个图书馆和更多。

                      【讨论】:

                      • 循环? OP从未提到过
                      【解决方案20】:

                      如果您使用的是 RHEL、CentOS、Oracle Linux 等,您可以使用 yum 安装 tkinter 模块

                      yum install tkinter
                      

                      【讨论】:

                      • 请注意,这会为python2 安装tkinter
                      • Fedora with python 3.5: sudo dnf install python3-tkinter
                      • 在 CentOS 7 上,我已经安装了 tkinter,但我的默认 python (2.7) 仍然抱怨“没有名为 tkinter 的模块”!
                      【解决方案21】:

                      如果您使用的是 Python 3,可能是因为您输入的是 Tkinter 而不是 tkinter

                      【讨论】:

                      • 我在 Windows 上,这很容易解决我的问题。 :)
                      • 啊,最后只是 T 出了问题!我正在关注一些大写的在线代码。非常感谢!!
                      猜你喜欢
                      • 2020-04-30
                      • 2016-10-09
                      • 2012-08-10
                      • 1970-01-01
                      • 1970-01-01
                      • 2015-08-04
                      • 1970-01-01
                      • 2020-05-18
                      相关资源
                      最近更新 更多