【问题标题】:How to pip or easy_install tkinter on Windows如何在 Windows 上 pip 或 easy_install tkinter
【发布时间】:2013-12-01 09:54:19
【问题描述】:

我的 Idle 抛出错误,提示 tkinter 无法导入。

有没有通过pipeasy_install 安装tkinter 的简单方法?

似乎有很多包名称为此而飞来飞去......

tkinter-pypy 的这个和其他各种变体都不起作用。

pip install python-tk

我在 Windows 上使用 Python 2.7,但我没有 apt-get 或其他系统包管理器。

【问题讨论】:

    标签: python python-2.7 tkinter pip easy-install


    【解决方案1】:

    每个 Python 安装都内置了 Tkinter 库。而且由于您使用的是 Windows,我相信您是通过他们网站上的二进制文件安装 Python 的?

    如果是这样,那么很可能您输入了错误的命令。应该是:

    import Tkinter as tk
    

    注意 Tkinter 开头的大写 T。

    对于 Python 3,

    import tkinter as tk
    

    【讨论】:

    • import Tkinter as tk gets: Traceback (most recent call last): File "", line 1, in File "C:\Python27\lib\lib-tk\ Tkinter.py",第 38 行,在 中 import FixTk 文件 "C:\Python27\lib\lib-tk\FixTk.py",第 65 行,在 中 import _tkinter ImportError: DLL load failed: %1 is不是有效的 Win32 应用程序。
    • 对于导入语句:Python 2.* 使用带有大写“T”的 Tkinter,Python 3.*:使用带有小写“t”的 tkinter。
    • 这适用于我在 Windows 10 和 python 3.7.0 上的 64 位
    • 简单更好的回答@IcyFlame
    【解决方案2】:

    如果你使用的是virtualenv,可以使用sudo apt-get install python-tk(python2)、sudo apt-get install python3-tk(python3) 安装tkinter,并且在虚拟环境中也可以正常工作

    【讨论】:

    • 但是如果我们没有 sudo 访问权限并且在我们自己的 virtualenv 中,这将不起作用。
    • "sudo apt-get install python-tk" 在我的 virtualenv 中为我工作并解决了我的问题。谢谢!
    • 这不能回答问题,因为 OP 正在 Windows 上工作。答案属于一个linux问题。
    【解决方案3】:

    我可以在这里看到两个解决方案:

    1) 关注Docs-Tkinter install for Python (for Windows):

    Tkinter(以及,自 Python 3.1 起,ttk)包含在所有标准 Python 发行版中。使用支持 Tk 8.5 或更高版本的 Python 版本以及 ttk.我们建议从 ActiveState 安装“ActivePython”发行版,其中包含您需要的一切。

    在您的网络浏览器中,转到Activestate.com,然后按照链接下载适用于 Windows 的 ActivePython 社区版。确保您下载的是 3.1 或更新版本,而不是 2.x 版本。

    运行安装程序,然后继续。您最终将获得全新安装的 ActivePython,例如位于C:\python32。从 Windows 命令提示符或开始菜单的“运行...”命令,您应该能够通过以下方式运行 Python shell:

    % C:\python32\python
    

    这应该会为您提供 Python 命令提示符。在提示符下,输入以下两个命令:

    >>> import tkinter
    >>> tkinter._test()
    

    这应该会弹出一个小窗口;窗口顶部的第一行应该是“This is Tcl/Tk version 8.5”;确保它不是 8.4!

    2) 卸载 64 位 Python 并安装 32 位 Python。

    【讨论】:

    • 对于 import _tkinter 我得到:回溯(最后一次调用):文件“”,第 1 行,在 中 ImportError:DLL 加载失败:%1 不是有效的 Win32应用程序。
    • 64 位 Python 2.7.5
    • 对于 python 3,当前版本是 8.6
    【解决方案4】:

    安装时确保在Tcl/Tk 下选择Will be installed on hard drive。如果安装时左侧有叉号,则不会安装 Tkinter。

    Python 3 也是如此:

    【讨论】:

    • 感谢您的提醒!我完全忘记了这两个是耦合的。
    【解决方案5】:

    当您为 Windows 安装 python 时,请使用标准选项或安装它要求的所有内容。我收到错误是因为我取消选择了 tcl。

    【讨论】:

    • 就是这样!我在安装过程中取消选择“tk/tcl and IDLE”选项,因为我不想要 IDLE。我重新安装了 python 并检测到 tkinter。
    • 如果是这种情况,可以通过修改安装并勾选tk/tcl来添加tkinter
    【解决方案6】:

    我来这里是为了寻找同样问题的答案,但上面的答案都没有真正回答这个问题!

    所以经过一番调查,我发现: 有一个包(至少适用于 python 3.x):

    pip3 install pytk
    

    问题是,它只是等式的 python 部分,并没有在你的操作系统中安装 tkinter 库,所以答案是你不能完全通过 pip 安装它 https://tkdocs.com/tutorial/install.html

    我个人觉得这很烦人,因为我正在打包一个要通过使用 tkinter 的 pip 安装的 python 应用程序,我正在寻找一种方法让 pip 确保已安装 tkinter,答案是我不能如果尚未安装它,则指示用户安装它,对于不需要知道或关心什么 tkinter 来使用我的应用程序的最终用户来说,这是一个非常糟糕的体验。

    【讨论】:

      【解决方案7】:

      我发布的最佳答案重新引用了我认为没有用的文档。

      tkinter 与 Windows 上的 python 安装一起打包,如果您在安装窗口中选择它。

      解决方法是修复安装(通过卸载GUI即可),这次选择安装tk。在此过程中,您可能需要指向或重新下载二进制文件。直接从 activestate 下载对我不起作用。

      这是人们在 Windows 上遇到的一个常见问题,因为如果您不知道 TCL/TK 是什么,很容易不想安装它,但 Matplotlib 等需要它。

      【讨论】:

      • FWIW,matplotlib 可以与 PyQt5(和其他几个图形后端)一起使用而不是 tkinter,并且 PyQt5 可以通过pip install pyqt5 整齐而完全地安装。
      【解决方案8】:

      在 Linux 中遇到了同样的问题。这解决了它。 (我使用的是 Debian 9 衍生的 Bunsen Helium)

      $ sudo apt-get install python3-tk

      【讨论】:

      • 这在我的 Ubuntu 18.04 服务器上对我有用,但为什么呢? tkinter 不附带 linux python 发行版吗?
      • 很长一段时间里,它们只附带 Python 2。
      • 不回答问题 - OP 正在运行 Windows。
      【解决方案9】:

      在python中,Tkinter是一个默认包,你可以修复安装并选择Tcl/Tk。 当你运行这个时,应该像这样安装 DDL:

      【讨论】:

        【解决方案10】:

        我在 Win-8 和 python-3.4 32 位遇到了类似的问题,我通过从 python.org 下载相同的版本解决了这个问题。

        下一步将是点击修复按钮并安装 Tk/tkinter 软件包或点击修复。 现在应该得到 Python34/Lib/tkinter 模块。 导入 tkinter 应该可以工作..

        【讨论】:

          【解决方案11】:

          我试图从 python 内置升级我的 tkinter,发现这个方法很有用:

          conda install -c anaconda tk
          

          【讨论】:

            【解决方案12】:

            cmd 中,运行命令pip install tk 并且应该安装Tkinter。

            【讨论】:

            • 我在 Ubuntu 上做了这个,它安装了 TensorKit,一个与深度学习相关的库。
            • 是的,它不是 tkinter。 pypi.org/project/tk
            【解决方案13】:

            最简单的方法:

            cd C:\Users\%User%\AppData\Local\Programs\Python\Python37\Scripts> 
            pip install pythonds 
            

            【讨论】:

            • 截图上的代码不是你添加的代码
            【解决方案14】:

            如果您使用 python 3.4.1,只需编写此行 from tkinter import * 这会将模块中的所有内容放入程序的默认命名空间中。实际上,您只需输入 Button 之类的按钮,而不是说像 tkinter.Button 这样的按钮

            【讨论】:

            • 从 Tkinter 导入 *
            • 问题是关于如何安装 tkinter,而不是如何将其导入程序。
            猜你喜欢
            • 2014-10-16
            • 2012-05-26
            • 1970-01-01
            • 2023-03-27
            • 2018-09-24
            • 1970-01-01
            • 1970-01-01
            • 2011-06-13
            • 2018-01-31
            相关资源
            最近更新 更多