mac pyenv 安装tkinter,解决tkinter环境的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mac pyenv 安装tkinter,解决tkinter环境的问题相关的知识,希望对你有一定的参考价值。

这几天写了一个爬虫,因为要获取浏览器的大小,所以调用了tkinter,测试时发现竟然出现了一个错误,出现这个错误:
ModuleNotFoundError: No module named ‘_tkinter‘
印象这个错误是在windows里面的碰到过,之前window10里面安装时忘记勾选tcl的那个选项了。搜了下,大部分出现在以下场景中:
1.MacOS Mojave
2.pyenv
我的现在系统是刚好是:MacOS Mojave,并且使用了pyenv,刚好两种情况都让我遇到了。
既然遇到了就要想把办法去解决它。
网上给出了:brew install tcl-tk 来解决这个问题,很遗憾的是这个方法对我没有效果。
到python官网搜下了:https://www.python.org/download/mac/tcltk/
找到了一个关于它的描述:
技术图片

看来是要到上面的网站下载一个tcl-tk的套件:https://www.activestate.com/products/tcl/downloads/
要下载这个套件的话,要先注册一个账号,还要新建一个项目。

技术图片
这里说下:最好不要下载最新版的,python对最新版的支持不是很友好,推荐下载8.5。
安装好后,还会出现ModuleNotFoundError: No module named ‘_tkinter‘这个错误,原因是很简单,pyenv 安装python的时候,tcl-tk还没有安装。解决这个问题很简答,重新安装下python就好,
我的是python3.7.3,所以执行 pyenv install 3.7.3 。
重装后之前安装的虚拟环境和依赖库都会存在,如果担心依赖有问题的话,可以先把依赖库导出备份下。
现在进行测试:python -m tkinter -c ‘tkinter._test()‘
技术图片
出现上图的话,那就证明安装成功了,可以愉快的使用的tkinter了。

以上是关于mac pyenv 安装tkinter,解决tkinter环境的问题的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 pyenv 安装运行 IDLE:`Python 可能没有为 Tk 配置``ModuleNotFoundError: No module named _tkinter'

无法在终端执行使用 tkinter 和 py2app 创建的 Mac 应用程序

mac 通过pyenv 安装多个python版本

MAC电脑使用Homebrew安装pyenv

Mac安装多个Python版本

mac pyenv+virtualenv 多python共存