#python-3.x #tkinter
#python-3.x #tkinter
Вопрос:
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 все еще связан со старым python на моем компьютере. Как мне изменить это, чтобы python3 мог использовать tkinter?
Комментарии:
1. «sudo apt-get install python3-tk» устанавливает tkinter для Python3
Ответ №1:
То, что сработало для меня в Ubuntu, на самом деле было просто:
sudo apt-get install python3-tk
Для python 3.6:
sudo apt-get install python3.6-tk
Я нигде не читал, я просто попробовал это, поскольку метод onteria_, похоже, не сработал для меня.
Комментарии:
1. Этот пакет действительно был необходим для меня, но имейте в виду, что название
Tkinter
теперьtkinter
в Python3, поэтому другие ответы все еще актуальны.2. при выполнении первой команды я получаю сбой подключения, хотя вторая работает нормально
3. Я не знаю, что произошло,
sudo apt-get install python3-tk
у меня не сработало (tkinter все еще не найден), но установкаpython3-tk
через synaptic сработала. (Ubuntu 16.04 с python 3.6)4. Он все еще работает. Молодец
5. Возможно, довольно поздно, но я проверил вывод
apt-cache policy python3*-tk
, он выдал мнеpython3-tk
как жизнеспособный, записи для 3.10-tk и 3.11-tk были пустыми. Установкаpython3-tk
сработала для меня. (Ubuntu22.04, Python 3.10.6)
Ответ №2:
Ответ на ваш вопрос заключается в том, что в python3 он Tkinter
переименован в tkinter
.
То есть со строчной буквы t.
Ответ №3:
В python 3 T
kinter переименован t
в kinter
Комментарии:
1. Это ответ на вопрос. PS: Если вы запускаете свой скрипт с ошибкой, не забудьте использовать «#!/usr/bin/python3». Например, в Ubuntu 12.04 версией Python по умолчанию является 2.7.3, поэтому «Tkinter» будет работать с «#!/usr/bin/python», но не с Python 3.
2. Во-вторых, это лучший и самый простой ответ на вопрос
Ответ №4:
Используйте следующую команду:
sudo apt-get install python3-tk
Следующие команды не работают:
sudo apt-get install python3-tkinter
sudo apt-get install python3-Tkinter
pip3 install Tkinter
pip3 install tkinter
Ответ №5:
sudo apt-get install python3-tk
Ответ №6:
Поскольку вы упомянули synaptic, я думаю, что вы используете Ubuntu. Вероятно, вам нужно запустить update-python-modules, чтобы обновить ваш модуль Tkinter для Python 3.
РЕДАКТИРОВАТЬ: Запущено обновление-python-modules
Сначала убедитесь, что вы python-support
установили:
sudo apt-get install python-support
Затем запустите, update-python-modules
используя -a
опцию, чтобы перестроить все модули:
sudo update-python-modules -a
Однако я не могу гарантировать, что все ваши модули будут собраны, поскольку между Python 2 и Python 3 произошли некоторые изменения в API.
Комментарии:
1. «sudo apt-get install python-support» приводит к следующей ошибке «E: Пакет ‘python-support’ не имеет кандидата для установки»
2. У меня также была та же ошибка, что и у @jason
E: Package 'python-support' has no installation candidate
, хотя я запускаю ее из docker (изображение tensorflow). Кто-нибудь знает, как это исправить?3. @CharlieParker В Ubuntu 16.04 LTS я смог исправить это с помощью
apt-get install python3-tk
4. Для тех из вас, у кого есть
E: Package 'X' has no installation candidate
, вам следует сначала запуститьsudo apt-get update
.5. есть ли способ, которым я могу сделать это и в gitpod тоже? он не позволяет мне использовать sudo и не позволяет мне обходиться без него
Ответ №7:
Если вы используете Ubuntu 18.04 вместе с Python 3.6, то pip или pip3 не помогут. Вам необходимо установить tkinter
с помощью следующей команды:
sudo apt-get install python3-tk
Комментарии:
1. Кажется, что это просто повторяет несколько предыдущих ответов за 2015-2017 годы
Ответ №8:
У меня была такая же проблема. Я пытался использовать:
sudo apt-get install python3-tk
Он выдал сообщение об ошибке, в котором указано, что blt (> = 2.4z-7) отсутствует и не подлежит установке.
Я зашел сюда и вручную установил его. (Для Ubuntu 14.04)
Затем я снова использовал apt, и это сработало.
Я пришел к выводу, что python3.4 в Ubuntu не поставляется с файлом .so, необходимым для продолжения установки. И для его загрузки потребовался blt.
Ответ №9:
это работает для меня:
from tkinter import *
root = Tk()
l = Label(root, text="Does it work")
l.pack()
Ответ №10:
Я нашел это в поисках исправления для python 3.5.
В моем случае я собирал python из исходного кода, вот что я сделал, чтобы помочь исправить:
Добавьте заголовки tkinter с помощью и перестройте python
sudo apt-get install tk8.6-dev
sudo make
Ответ №11:
Добавление решения для CentOS 7 (python 3.6.x)
yum install python36-tkinter
Я перепробовал практически все возможные версии, надеюсь, это поможет другим.
Ответ №12:
Добавляю решение, с которым я столкнулся python 3.4
на Fedora 21
. Надеюсь, это поможет тем, кто сталкивается с подобной проблемой.
Любая из этих команд установит tkinter
:
sudo yum install python3-tkinter
OR
sudo dnf install python3-tkinter
Ответ №13:
требования к tkinter:
python 3.6
и перейдите в оболочку, напишите тестовый код, подобный :
из импорта tkinter *
root = Tk()
root.mainloop()
Ответ №14:
Для Ubuntu 20.04 это работает для меня.
sudo apt-get install python3.6-tk
Комментарии:
1. Это решение уже было предоставлено.
2. @AlexK но не для 20.04
3. Если существующий ответ все еще действителен для более новой версии, нет необходимости публиковать другой ответ.