Модуль Tkinter не найден в Ubuntu


80
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
>>> 

с другой стороны...

Python 3.2 (r32:88445, Mar 25 2011, 19:28:28) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named Tkinter 

Проверил synaptic, установлен Tkinter. Потом я нашел это ...

Если это не удается с «Нет модуля с именем _tkinter», ваша конфигурация Python должна быть изменена, чтобы включить этот модуль (который является модулем расширения, реализованным на C). Не редактируйте Модули / Установки (они устарели). Возможно, вам придется установить Tcl и Tk (при использовании RPM также установите RPM-пакеты -devel) и / или отредактируйте сценарий setup.py, чтобы он указывал на правильные места, где установлен Tcl / Tk. Если вы устанавливаете Tcl / Tk в каталоги по умолчанию, простой повторный запуск "make" должен построить расширение _tkinter.

Я предполагаю, что tkinter все еще связан со старым питоном на моем компьютере. Как мне изменить это, чтобы python3 мог использовать tkinter?


19
«sudo apt-get install python3-tk» устанавливает tkinter для Python3 +
markfknight

Ответы:


7

Поскольку вы упомянули синаптический, я думаю, что вы используете Ubuntu. Вероятно, вам нужно запустить update-python-modules, чтобы обновить модуль Tkinter для Python 3.

РЕДАКТИРОВАТЬ : запуск модулей update-python

Сначала убедитесь, что вы python-supportустановили:

sudo apt-get install python-support

Затем запустите update-python-modulesс -aвозможностью перестроить все модули:

sudo update-python-modules -a

Однако я не могу гарантировать, что все ваши модули будут построены, поскольку между Python 2 и Python 3 есть некоторые изменения API.


19
«sudo apt-get install python-support» приводит к следующей ошибке «E: Пакет 'python-support' не имеет кандидата на установку»
Джейсон

5
У меня также была та же ошибка, что и у @jason, E: Package 'python-support' has no installation candidateхотя я запускаю ее из докера (изображение тензорного потока). Кто-нибудь знал как исправить?
Чарли Паркер

18
@CharlieParker На Ubuntu 16.04 LTS я смог исправить этоapt-get install python3-tk
rohitmohta

Для тех из вас, у кого есть E: Package 'X' has no installation candidate, вам следует sudo apt-get updateсначала запустить .
Дэниел Патрик

294

То, что у меня работало в Ubuntu, на самом деле было просто:

sudo apt-get install python3-tk

Для python 3.6:

sudo apt-get install python3.6-tk

Я нигде не читал, просто пробовал, так как метод onteria_ у меня вроде не работал.


8
Этот пакет действительно был мне нужен, но имейте в виду, что имя Tkinterтеперь находится tkinterна Python3, поэтому другие ответы все еще актуальны.
Люк Марлин

первая команда, которую я получаю, не удалась, вторая работает нормально
Lost Crotchet

Я не знаю, что случилось, sudo apt-get install python3-tkу меня не сработало (tkinter все еще не найден), но установка python3-tkчерез синаптик сработала. (Ubuntu 16.04 с python 3.6)
Георг

37

Ответ на ваш вопрос заключается в том, что Tkinter переименован в tkinter в python3

то есть в нижнем регистре t


20

В python 3 Tкинтер переименован в tкинтер


Это ответ на вопрос. PS: Если вы запускаете свой скрипт с помощью shebang, не забудьте использовать «#! / Usr / bin / python3». В Ubuntu 12.04, например, версия Python по умолчанию - 2.7.3, поэтому «Tkinter» будет работать с «#! / Usr / bin / python», но не с Python 3.
rbaleksandar

Во-вторых, это лучший и самый простой ответ на вопрос
Хамман Сэмюэл


13

Используйте следующую команду:

sudo apt-get install python3-tk

Следующие команды не работают:

sudo apt-get install python3-tkinter
sudo apt-get install python3-Tkinter
pip3 install Tkinter
pip3 install tkinter

8

Если вы используете Ubuntu 18.04 вместе с Python 3.6, pip или pip3 не помогут. Вам необходимо установить tkinterс помощью следующей команды:

sudo apt-get install python3-tk

4

это работает для меня:

from tkinter import *
root = Tk()
l = Label(root, text="Does it work")
l.pack()

3

У меня такая же проблема. Я пробовал использовать:

sudo apt-get install python3-tk

Выдало сообщение об ошибке: blt (> = 2.4z-7) отсутствует и не устанавливается.

Я пошел сюда и вручную установил. (Для Ubuntu 14.04)

Затем я снова использовал apt, и это сработало.

Я пришел к выводу, что python3.4 в Ubuntu не поставляется с файлом .so, необходимым для продолжения установки. И для его загрузки требовался blt.


1

Я нашел это в поисках исправления для python 3.5.

В моем случае я создавал python из исходного кода, вот что я сделал, чтобы исправить:

Добавьте заголовки tkinter и перестройте python

sudo apt-get install tk8.6-dev
sudo make

1

Добавление решения, с которым столкнулся python 3.4на Fedora 21. Надеюсь, это поможет тем, кто сталкивается с подобной проблемой.

Любая из этих команд установит tkinter:

sudo yum install python3-tkinter
OR
sudo dnf install python3-tkinter

1

Добавление решения для CentOs 7 (python 3.6.x)

yum install python36-tkinter

Я пробовал все возможные версии, надеюсь, это поможет другим.


0

требование для tkinter:

Python 3.6+

и перейдите в оболочку, напишите тестовый код, например:

из tkinter import *

корень = Tk ()

root.mainloop ()

введите описание изображения здесь

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.