Python 3.10中的Tkinter?

hjzp0vay  于 2023-02-06  发布在  Python
关注(0)|答案(2)|浏览(387)

我尝试在Python 3.10项目中使用Tkinter,我用Python 3.10创建了一个虚拟环境,并且安装了Tkinter,当我运行import tkinter时,我得到了以下错误。

Traceback (most recent call last):
  File "/home/xxx/yyy/main.py", line 11, in <module>
    import tkinter
  File "/usr/local/lib/python3.10/tkinter/__init__.py", line 37, in <module>
    import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'

然而,如果我在Python 3.9的虚拟环境之外执行同样的操作,或者用Python 3.9创建一个新的虚拟环境,它会运行良好,没有错误。
Tkinter在3.10中还不受支持吗?或者我可能做错了什么?

pwuypxnk

pwuypxnk1#

我也有同样的问题。
我在安装python3-tk时解决了这个问题。
根据您的操作系统,在终端或cdm中执行适当的命令。例如:

# UBUNTU / DEBIAN
sudo apt-get install python3-tk

# MacOS
brew install python-tk@3.10

# Fedora
sudo dnf install python3-tkinter

# CentOS
sudo yum install python3-tkinter

# Make sure to specify correct Python version:
sudo apt-get install python3.10-tk
brew install python-tk@3.9

如果你使用的是Windows系统,那么在安装Python时,你必须确保勾选tcl/tk和IDLE复选框。
我使用的是Pop_os,一个基于Ubuntu的Linux,所以sudo apt-get install python3-tk对我很有效。
我在https://bobbyhadz.com/blog/python-no-module-named-tkinter中找到了这个解决方案

jdgnovmf

jdgnovmf2#

tkinter是python标准库的一部分,但是它依赖于底层组件tcl/tk,在linux发行版上。如果你通过configure/make命令手动安装python,tkinter模块构建将会失败,除非你有tcl/tk包和它的devel包(通常是tk-devel/tcl-devel)。如果是这样的话,只需安装这些包,然后通过configure/make命令重新构建和安装python。

相关问题