python - 在 OSX Mountain Lion 8.2 上使用 Tkinter

标签 python python-2.7 tkinter

我正在学习使用 Tkinter for Python 程序制作 GUI,但遇到了很多问题:

尝试运行 from Tkinter import filedialog 我收到 ImportError: Cannot import name filedialog。在其他地方,我看到它使用小写的 tkinter 进行调用(我认为这仅适用于 Python 3),但它无法将其识别为现有的 ImportError: No module named tkinter。然而,运行 from Tkinter import * 是有效的,我可以根据教程创建示例 hello world。

我唯一的猜测是它正在尝试使用 OSX 附带的 Tkinter 过时版本。然而,考虑到 Mountain Lion 是多么新,我不得不想知道它到底有多过时。我的假设是,在我自己安装 Python 2.7 后,如果我从 IDLE 运行,它应该可以工作,但相反,我从 IDLE shell 得到与上面完全相同的结果。

因此,之后我从 Unix 终端尝试了 sudo pip install tkintersudo pip install Tkinter,但我得到了 No distributions at all find for update

所以我开始研究 Tkinter 本身的文档,我发现了 Tcl/Tk instructions for Mac OS X其中指出:

Important: If you are using Mac OS X 10.8, 10.7 or 10.6, use IDLE or tkinter from a 64-bit/32-bit Python installer only with ActiveTcl 8.5 installed. If you cannot install ActiveTcl 8.5, use a 32-bit-only installer instead.

所以我在他们提供的表格中找到了我的操作系统,并看到他们推荐 ActiveTcl8.5.11 ,但不幸的是,download link is broken.

所以我在这里完全不知所措。任何帮助将不胜感激。

最佳答案

如果您想实现文件对话框,请查看 tkFileDialog 。它是一个单独的模块,不是 Tkinter 模块的一部分。

直接导入即可使用:

import tkFileDialog

关于python - 在 OSX Mountain Lion 8.2 上使用 Tkinter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13999939/

相关文章:

python - 在settings.py中,如果环境变量仅在一种环境中使用,应如何加载/设置?

python - 如何在 Linux 上的 Python 中使用 open() 和追加模式以及eek()?

python - Pyinstaller 缺少 dll,exe 无法运行

python - 何时使用 tkinter 菜单按钮

python - Tkinter 中的 MoviePy/ffmpeg 进度条

python - 我如何从生命线中的 coxPHFitter 函数和变量系数中提取基线危险

python - Azure Rest API授权失败错误

python - Kafka-python 获取主题的分区数

c++ - 如何找到指向结构的指针的地址并将其转换为 CFFI 中的 void**

python - .在没有按我预期的方式运行之后