8

我正在运行 Windows 7 32 位。我已经安装了 Python 3.2.2 并选择了每个模块进行安装(包括 Tcl/Tk)。在我的电脑上,我可以通过双击 .py 文件来运行脚本,它会发现我的 Tkinter 导入很好。如果我从命令行运行它,它会显示ImportError: No module named 'Tkinter'. 我把这个脚本传给了一位同样安装的同事,她甚至连双击都不能运行这个脚本。同样的 Tkinter 问题。我们的 PATH 与 C:\Python33 作为第一项相同,并且 tkinter 显示在 lib 文件夹中。我的想法不多了。这是怎么回事?为什么 Tkinter 对现有如此挑剔?

更新:显然 Tcl/Tk 不包括 Tkinter。它对我有用的原因是因为我通过我们公司的下载系统安装了一个特殊的 Python 包,恰好包含它。此版本链接到 .py 扩展名。然而,在命令提示符下,我更新的 Python(使用 Tcl/Tk 但没有 Tkinter)是我的 PATH 变量选择的 Python。我的同事没有安装这个特殊的软件包,所以它对她不起作用。我曾认为运行脚本的是我的 Python 3.3,但事实并非如此,这就是为什么它似乎对我有用。也就是说,如果其他人遇到此问题,请检查 sys.executable 和 sys.version,如下所示,以了解发生了什么!

4

2 回答 2

15

您可能同时拥有 Python 2.x 和 Python 3.x。并且py扩展链接到 Python 2.x 解释器。您的 python 脚本设计为与 Python 2.x 一起运行。

在 Python 3 中,Tkinter模块被重命名为tkinter(小写)。


如下创建一个脚本,然后单击它运行它,然后在命令中运行它。你可能会得到不同的结果:

import sys
print(sys.version)
input()
于 2013-09-26T14:11:19.270 回答
2

ImportError: No module named 'Tkinter' 在 Python 3Tkinter中改为tkinter Tryimport tkinter as tk

希望能帮助到你!

于 2020-05-08T18:48:26.140 回答