Python未配置Tk
我在使用Ubuntu 13.10和Python 3.3.4,使用的是pyenv。我用其他模块没有问题。当我进入Python控制台并输入
import tkinter
它输出
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/serdar/.pyenv/versions/3.3.4/lib/python3.3/tkinter/__init__.py", line 40, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ImportError: No module named '_tkinter'
我已经安装了python3-tk
和tk-devel
。
3 个回答
4
对于Mac用户,
- 完全卸载pyenv:在终端输入
brew uninstall pyenv && rm -rf ~/.pyenv
。 - 安装zlib、tcl-tk和pyenv。
brew update
brew install zlib
brew install tcl-tk #otherwise we may have problems with tf package
brew install pyenv
- 让编译器找到zlib。把这段内容添加到你的 ~/.bashrc 或 ~/.zshrc 文件中(如果你使用oh-my-zsh的话)。
# For compilers to find zlib you may need to set:
export LDFLAGS="${LDFLAGS} -L/usr/local/opt/zlib/lib"
export CPPFLAGS="${CPPFLAGS} -I/usr/local/opt/zlib/include"
# For pkg-config to find zlib you may need to set:
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH} /usr/local/opt/zlib/lib/pkgconfig"
这样你就设置好了!想了解更多细节,可以查看 这个 GitHub的链接。
18
这是一个针对Mac用户的指南,
- 首先,卸载你当前的Python版本。比如说:
pyenv uninstall 3.7.2
- 接下来,安装TK:
brew install tcl-tk
- 然后,按照安装后的步骤来配置TK:
export LDFLAGS="-L/usr/local/opt/tcl-tk/lib"
export CPPFLAGS="-I/usr/local/opt/tcl-tk/include"
export PATH=$PATH:/usr/local/opt/tcl-tk/bin
- 重新加载你的终端会话,确保之前的所有设置都正确
- 最后,安装Python:
pyenv install 3.7.2
现在TK应该可以正常工作了
39
在使用 pyenv install
安装时,你需要确保有 Tk 的开发文件和头文件可用。
如果你在使用 Ubuntu(15.04),可以通过以下命令来安装这些文件: sudo apt-get install tk-dev
。
安装完成后,运行 pyenv install 3.4.3
(或者 pyenv install 2.7.10
等等)就能识别到这些文件,并支持 Tk 了。