【问题标题】:Python version and Tcl/Tk compatibilityPython 版本和 Tcl/Tk 兼容性
【发布时间】:2011-03-25 16:54:44
【问题描述】:

我已经安装了 Tcl 和 Tk,但我遇到了非常熟悉的“No module named _tkinter”错误。

我的“python”Bash 命令运行 Python 版本 2.4.2,但 Synaptic 说我安装了 2.6.6。我什至尝试安装 3.0,但也失败了。

我自己配置​​并构建了 Tcl/Tk 压缩包,并尝试使用突触包。

“wish”和“tclsh”命令都有效,所以我知道模块已安装,但我一辈子都无法让 Python 识别它们。此外,我终其一生都无法弄清楚我应该使用哪个版本的 Python,以及如何让我的 Bash 命令使用那个版本。

我没有看到删除 2.4.2 的任何选项,如果我删除 2.6.6,它会删除我的大部分其他软件包(我知道夸大其词)。

我真的不知道从哪里开始,所以任何指导将不胜感激。

更新:

我不得不重新安装 python-tk 包,2.6 可以导入它。现在我只需要弄清楚如何删除 2.4,以免以后搞砸。

【问题讨论】:

    标签: python linux tkinter tcl tk


    【解决方案1】:

    这里有一些命令可以帮助您诊断问题。

    首先,尝试运行带有版本号的python 命令。自从 Synaptic 说你已经安装了 2.6.6,你应该可以运行 python2.6 到 获取那个版本:

    (type 'python' and hit TAB to see possible completions)
    
    % python<tab>
    python
    python2.6
    python3.1
    

    如果您仍然无法让 TK 运行,请查找 _tkinter.so 模块所在的位置 你的系统。它可能在 2.6.6 解释器找不到的地方。这是 python-tk 软件包在 Ubuntu Lucid 上安装的位置:

    % find /usr -name '_tkinter*'
    /usr/lib/python2.6/lib-dynload/_tkinter.so
    

    【讨论】:

      【解决方案2】:

      对于那些登陆此页面的人来说,关于 Python 3+ 的更新(就像我一样)。要在基于 Debian 的 Linux (Ubuntu) 上运行 tkinter,需要 python3 以及 python3-tk(它不在库列表中):

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

      此外,脚本需要将其作为第一行:

      #! /usr/bin/python3
      

      至少我是这样解决问题的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-05-03
        • 2023-03-31
        • 1970-01-01
        • 1970-01-01
        • 2015-03-26
        • 2019-08-27
        • 2023-03-03
        • 2015-04-18
        相关资源
        最近更新 更多