Nie znaleziono modułu Tkinter w systemie 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
>>> 

z drugiej strony...

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 

Sprawdziłem synaptic, Tkinter jest zainstalowany. Potem znalazłem to ...

Jeśli nie powiedzie się z komunikatem „Brak modułu o nazwie _tkinter”, konfiguracja Pythona musi zostać zmodyfikowana w celu uwzględnienia tego modułu (który jest modułem rozszerzającym zaimplementowanym w języku C). Nie edytuj modułów / ustawień (jest nieaktualny). Być może będziesz musiał zainstalować Tcl i Tk (jeśli używasz RPM, zainstaluj również -devel RPM) i / lub zmodyfikuj skrypt setup.py, aby wskazywał właściwe lokalizacje, w których jest zainstalowany Tcl / Tk. Jeśli zainstalujesz Tcl / Tk w domyślnych lokalizacjach, po prostu ponownie uruchom "make" i skompiluj rozszerzenie _tkinter.

Zgaduję, że tkinter nadal jest powiązany ze starym Pythonem na moim komputerze. Jak to zmienić, aby Python3 mógł używać tkinter?

Jim Syyap
źródło
19
„sudo apt-get install python3-tk” instaluje tkinter dla Python3 +
markfknight

Odpowiedzi:

7

Odkąd wspomniałeś o synaptic, myślę, że jesteś na Ubuntu. Prawdopodobnie będziesz musiał uruchomić update-python-modules, aby zaktualizować moduł Tkinter dla Pythona 3.

EDYCJA : Uruchamianie update-python-modules

Najpierw upewnij się, że masz python-supportzainstalowane:

sudo apt-get install python-support

Następnie uruchom update-python-modulesz -aopcją przebudowy wszystkich modułów:

sudo update-python-modules -a

Nie mogę jednak zagwarantować, że wszystkie twoje moduły zostaną zbudowane, ponieważ istnieją pewne zmiany API między Pythonem 2 i Pythonem 3.

onteria_
źródło
19
„sudo apt-get install python-support” prowadzi do następującego błędu: „E: Pakiet 'python-support' nie ma kandydata na instalację”
jason
5
Miałem również ten sam błąd co @jason, E: Package 'python-support' has no installation candidatechociaż uruchamiam go z dockera (obraz tensorflow). Czy ktoś wiedział, jak to naprawić?
Charlie Parker
18
@CharlieParker Na Ubuntu 16.04 LTS udało mi się to naprawić doapt-get install python3-tk
rohitmohta
Dla tych z was, którzy mają E: Package 'X' has no installation candidate, powinniście sudo apt-get updatenajpierw biec .
Daniel Patrick
294

To, co działało dla mnie w Ubuntu, to tak naprawdę:

sudo apt-get install python3-tk

W przypadku Pythona 3.6:

sudo apt-get install python3.6-tk

Nigdzie nie czytałem, po prostu próbowałem, ponieważ metoda onterii_ wydawała się nie działać dla mnie.

Pinna_be
źródło
8
Ten pakiet był rzeczywiście potrzebny, ale pamiętaj, że nazwa Tkinterjest teraz tkinterw Pythonie3, więc inne odpowiedzi są nadal aktualne.
Luke Marlin
pierwsze polecenie, które otrzymuję połączenie nie powiodło się, drugie działa jednak dobrze
Lost Crotchet
Nie wiem, co się stało, sudo apt-get install python3-tknie działa dla mnie (nadal nie znaleziono tkintera), ale instalacja python3-tkprzez synaptic zadziałała. (Ubuntu 16.04 z Pythonem 3.6)
Georg
37

Odpowiedź na twoje pytanie brzmi, że nazwa Tkinter została zmieniona na tkinter w pythonie3

czyli z małą literą t

Nils Nyman
źródło
20

W pythonie 3 Tkinter zmienił nazwę na tkinter

user2569010
źródło
To jest odpowiedź na pytanie. PS: Jeśli uruchamiasz skrypt z shebangiem, nie zapomnij użyć "#! / Usr / bin / python3". Na przykład w Ubuntu 12.04 domyślna wersja Pythona to 2.7.3, więc "Tkinter" będzie działać z "#! / Usr / bin / python", ale nie z Pythonem 3.
rbaleksandar
Po drugie, jest to najlepsza i najprostsza odpowiedź na to pytanie
Hamman Samuel
14
sudo apt-get install python3-tk
Roberto Júnior
źródło
13

Użyj następującego polecenia:

sudo apt-get install python3-tk

Następujące polecenia nie działają:

sudo apt-get install python3-tkinter
sudo apt-get install python3-Tkinter
pip3 install Tkinter
pip3 install tkinter
Kishan Kishore
źródło
8

Jeśli używasz Ubuntu 18.04 wraz z Pythonem 3.6, pip lub pip3 nie pomogą. Musisz zainstalować tkinterza pomocą następującego polecenia:

sudo apt-get install python3-tk
abhimanyu singh
źródło
4

to działa dla mnie:

from tkinter import *
root = Tk()
l = Label(root, text="Does it work")
l.pack()
user1497423
źródło
3

Miałem ten sam problem. Próbowałem użyć:

sudo apt-get install python3-tk

Wystąpił błąd informujący, że blt (> = 2.4z-7) nie jest obecny i nie można go zainstalować.

Poszedłem tutaj i ręcznie go zainstalowałem. (Dla Ubuntu 14.04)

Potem znowu użyłem apt i zadziałało.

Doszedłem do wniosku, że python3.4 w Ubuntu nie zawierał pliku .so wymaganego do przeprowadzenia instalacji. A do jego pobrania potrzebny był blt.

Mohit Sinha
źródło
1

Znalazłem to szukając poprawki dla Pythona 3.5.

W moim przypadku budowałem Pythona ze źródła, oto co zrobiłem, aby pomóc naprawić:

Dodaj nagłówki tkinter za pomocą i przebuduj Pythona

sudo apt-get install tk8.6-dev
sudo make
parsethis
źródło
1

Dodanie rozwiązania, które ja do czynienia z python 3.4na Fedora 21. Mam nadzieję, że pomoże to osobom borykającym się z podobnym problemem.

Każde z tych poleceń zainstaluje tkinter:

sudo yum install python3-tkinter
OR
sudo dnf install python3-tkinter
MaNKuR
źródło
1

Dodawanie rozwiązania dla CentOs 7 (python 3.6.x)

yum install python36-tkinter

Próbowałem każdej możliwej wersji, mam nadzieję, że to pomoże innym.

l Steveo l
źródło
0

wymóg dla tkintera:

Python 3.6+

i przejdź do powłoki napisz kod testowy, taki jak:

z importu tkinter *

root = Tk ()

root.mainloop ()

wprowadź opis obrazu tutaj

Sarvesh
źródło