gpt4 book ai didi

python - ubuntu 16.4 上的 tkinter 导入错误

转载 作者:太空宇宙 更新时间:2023-11-03 11:42:08 25 4
gpt4 key购买 nike

我试图运行一个代码,它使用乌龟来画一棵树。代码没有问题,因为我在Windows 10上运行成功,但是在Ubuntu上,遇到如下错误:

mosharraf@mmh:~$ cd Desktop
mosharraf@mmh:~/Desktop$ python3 Tree.py
Traceback (most recent call last):
File "Tree.py", line 6, in <module>
import turtle
File "/usr/local/lib/python3.6/turtle.py", line 107, in <module>
import tkinter as TK
File "/usr/local/lib/python3.6/tkinter/__init__.py", line 36, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
mosharraf@mmh:~/Desktop$

然后我尝试安装 tkinter 但我失败了。

mosharraf@mmh:~$ sudo apt-get install python3-tk
[sudo] password for mosharraf:
Reading package lists... Done
Building dependency tree
Reading state information... Done
python3-tk is already the newest version (3.5.1-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
mosharraf@mmh:~$

然后,我在目录中检查并找到了 tkinter。

mosharraf@mmh:/usr/local/lib/python3.6$ cd tkinter
mosharraf@mmh:/usr/local/lib/python3.6/tkinter$ ls
colorchooser.py constants.py dnd.py font.py __main__.py __pycache__ simpledialog.py tix.py
commondialog.py dialog.py filedialog.py __init__.py messagebox.py scrolledtext.py test ttk.py
mosharraf@mmh:/usr/local/lib/python3.6/tkinter$ python3
Python 3.6.4 (default, Dec 22 2017, 18:44:45)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tkinter
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.6/tkinter/__init__.py", line 36, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
>>>

tkinter 位于您在上面看到的目录中,但我无法导入它。我尝试了几种方法,例如

import tkinter

import tkinter as tk

from tkinter import *

等等

请注意,我在 python 2.7 中运行代码并且它运行成功。我还在 Windows 10、Python 3.6 上运行了代码。但在 Ubuntu 中,它导致了问题。

最佳答案

在您的帖子底部,您说:

Note that I ran the code in python 2.7 and it ran successfully.

当您从 Python 2 导入 Tkinter 时,您必须说:

导入 Tkinter

当您从 Python 3 导入 Tkinter 时,您必须说:

导入 tkinter

当我知道我的脚本将从多个版本的 Python 运行时,我为 Tkinter 使用的片段如下:

import sys

py_version = int(sys.version[0])

# If the python version is lower than 3, use Python 2 import
if py_version < 3:
import Tkinter

# Otherwise use Python 3 import
else:
import tkinter

如果以上没有解决您的问题:

我在您的一条错误消息中看到了这一点

python3-tk 已经是最新版本 (3.5.1-1)。

但是报错信息还说你的Python版本是3.6

尝试使用:sudo apt-get install python3.6-tk

关于python - ubuntu 16.4 上的 tkinter 导入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48012086/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com