(M1 MBA 2020,MacOS 12.3.1) 因此,在 Vs Code 内部,当我从
Python 3.8.9
选择解释器作为 usr/local/bin Tkinter
时,它会按照我想要的方式运行。
这是运行代码供参考。
当我尝试使用全局
Python 3.8.9
解释器 (usr/bin/python3
) 时,问题就出现了。当代码运行时,应用程序最终看起来像这样。
此外,当我运行代码时,终端会显示以下内容:
DEPRECATION WARNING: The system version of Tk is deprecated and may be removed in a future release. Please don't rely on it. Set TK_SILENCE_DEPRECATION=1 to suppress this warning.
我怎样才能修复这个错误?或者更新我的全局 Tkinter 版本而不偏离
Python 3.8.9
。此外,如果需要更多信息,我很乐意提供,抱歉,我对这些东西不熟悉😅
应用程序中使用的包: tkinter、枕头、tkmacosx
最后一件事,当我删除所有提及的 Tkmacosx 包时,该应用程序看起来像这样:
如果您安装了 Homebrew,您可以使用以下命令更新
tk
:
brew uninstall tcl-tk --devel
brew install tcl-tk
推荐的选项是
然后您可能需要将
export PATH="/usr/local/opt/tcl-tk/bin:$PATH"
添加到您的.zshrc
文件中:
如果您使用的是
zsh
终端:
用途:
echo "# For tkinter
export PATH=\"/usr/local/opt/tcl-tk/bin:\$PATH\"" >> ~/.zshrc
source ~/.zshrc
或者如果您使用的是
bash
终端:
echo "# For tkinter
export PATH=\"/usr/local/opt/tcl-tk/bin:\$PATH\"" >> ~/.bashrc
source ~/.bashrc
如果上述步骤不起作用,您可能需要安装另一个软件包(@goker):
brew install [email protected]
升级文档tk
下面弗雷迪的回答https://stackoverflow.com/a/72472483/9842697有效。
(此注释是对答案的回应)
我通过 pyenv 安装了 python 3.10.6,通过 homebrew 安装了 pyenv。 (使用--devel卸载不起作用)
% brew install tcl-tk
% pyenv install 3.10.6
% python
>>> import idlelib.idle