Tkinter-Modul unter Ubuntu nicht gefunden

79
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
>>> 

auf der anderen Seite...

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 

Ich habe synaptisch überprüft, Tkinter ist installiert. Dann fand ich das--

Wenn dies mit "Kein Modul mit dem Namen _tkinter" fehlschlägt, muss Ihre Python-Konfiguration so geändert werden, dass sie dieses Modul enthält (ein in C implementiertes Erweiterungsmodul). Bearbeiten Sie keine Module / Setups (es ist veraltet). Möglicherweise müssen Sie Tcl und Tk installieren (wenn Sie RPM verwenden, installieren Sie auch die RPMs -devel) und / oder das Skript setup.py bearbeiten, um auf die richtigen Speicherorte zu verweisen, an denen Tcl / Tk installiert ist. Wenn Sie Tcl / Tk an den Standardspeicherorten installieren, sollte durch einfaches erneutes Ausführen von "make" die Erweiterung _tkinter erstellt werden.

Ich vermute, dass tkinter immer noch mit der alten Python in meinem PC verbunden ist. Wie ändere ich das, damit python3 tkinter verwenden kann?

Jim Syyap
quelle
19
"sudo apt-get install python3-tk" installiert tkinter für Python3 +
markfknight

Antworten:

7

Da Sie synaptisch erwähnen, denke ich, dass Sie auf Ubuntu sind. Sie müssen wahrscheinlich update-python-modules ausführen , um Ihr Tkinter-Modul für Python 3 zu aktualisieren.

EDIT : Update-Python-Module ausführen

Stellen Sie zunächst sicher, dass Sie Folgendes python-supportinstalliert haben:

sudo apt-get install python-support

Führen Sie dann update-python-modulesdie -aOption aus, um alle Module neu zu erstellen:

sudo update-python-modules -a

Ich kann jedoch nicht garantieren, dass alle Ihre Module erstellt werden, da es einige API-Änderungen zwischen Python 2 und Python 3 gibt.

onteria_
quelle
19
"sudo apt-get install python-support" führt zu folgendem Fehler "E: Paket 'python-support' hat keinen Installationskandidaten"
Jason
5
Ich hatte auch den gleichen Fehler wie @jason, E: Package 'python-support' has no installation candidateobwohl ich ihn von einem Docker aus ausführe (Tensorflow-Image). Wusste jemand, wie man es repariert?
Charlie Parker
18
@CharlieParker Unter Ubuntu 16.04 LTS konnte ich dieses apt-get install python3-tk
Problem
Für diejenigen von Ihnen mit dem E: Package 'X' has no installation candidatesollten Sie sudo apt-get updatezuerst laufen .
Daniel Patrick
293

Was in Ubuntu für mich funktioniert hat, war eigentlich nur:

sudo apt-get install python3-tk

Für Python 3.6:

sudo apt-get install python3.6-tk

Ich habe nirgendwo gelesen, ich habe es einfach versucht, da die Methode von onteria_ für mich nicht zu funktionieren schien.

Pinna_be
quelle
8
Dieses Paket wurde zwar für mich benötigt, aber denken Sie daran, dass der Name von Tkinterjetzt tkinterin Python3 ist, sodass andere Antworten immer noch relevant sind.
Luke Marlin
erster Befehl Ich bekomme Verbindung fehlgeschlagen, der zweite funktioniert aber gut
Lost Crotchet
Ich weiß nicht, was passiert ist, sudo apt-get install python3-tkhat bei mir nicht funktioniert (tkinter immer noch nicht gefunden), aber die Installation python3-tküber synaptic hat funktioniert. (Ubuntu 16.04 mit Python 3.6)
Georg
37

Die Antwort auf Ihre Frage lautet, dass Tkinter in python3 in tkinter umbenannt wird

das ist mit Kleinbuchstaben t

Nils Nyman
quelle
20

In Python 3 wurde TKinter in tKinter umbenannt

user2569010
quelle
Dies ist die Antwort auf die Frage. PS: Wenn Sie Ihr Skript mit einem Shebang ausführen, vergessen Sie nicht, "#! / Usr / bin / python3" zu verwenden. Unter Ubuntu 12.04 ist die Standardversion von Python beispielsweise 2.7.3, sodass "Tkinter" mit "#! / Usr / bin / python"
funktioniert,
Zweitens, dass dies die beste und einfachste Antwort auf die Frage ist
Hamman Samuel
14
sudo apt-get install python3-tk
Roberto Júnior
quelle
13

Verwenden Sie den folgenden Befehl:

sudo apt-get install python3-tk

Die folgenden Befehle funktionieren nicht:

sudo apt-get install python3-tkinter
sudo apt-get install python3-Tkinter
pip3 install Tkinter
pip3 install tkinter
Kishan Kishore
quelle
8

Wenn Sie Ubuntu 18.04 zusammen mit Python 3.6 verwenden, hilft pip oder pip3 nicht weiter. Sie müssen tkintermit dem folgenden Befehl installieren :

sudo apt-get install python3-tk
abhimanyu singh
quelle
4

das funktioniert bei mir:

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

Ich hatte das gleiche Problem. Ich habe versucht zu verwenden:

sudo apt-get install python3-tk

Es wurde ein Fehler ausgegeben, der besagt, dass blt (> = 2.4z-7) nicht vorhanden und nicht installierbar ist.

Ich ging hierher und installierte es manuell. (Für Ubuntu 14.04)

Dann habe ich apt wieder benutzt und es hat funktioniert.

Ich kam zu dem Schluss, dass python3.4 in Ubuntu nicht mit der .so-Datei geliefert wurde, die für die weitere Installation erforderlich ist. Und blt musste es herunterladen.

Mohit Sinha
quelle
1

Ich fand dies auf der Suche nach einem Fix für Python 3.5.

In meinem Fall habe ich Python aus dem Quellcode erstellt. Folgendes habe ich getan, um das Problem zu beheben:

Fügen Sie die tkinter-Header mit hinzu und erstellen Sie Python neu

sudo apt-get install tk8.6-dev
sudo make
Parsethis
quelle
1

Das Hinzufügen der Lösung , dass ich mit konfrontiert python 3.4auf Fedora 21. Ich hoffe, dies wird denjenigen helfen, die mit einem ähnlichen Problem konfrontiert sind.

Jeder dieser Befehle wird installiert tkinter:

sudo yum install python3-tkinter
OR
sudo dnf install python3-tkinter
MaNKuR
quelle
1

Hinzufügen einer Lösung für CentOs 7 (Python 3.6.x)

yum install python36-tkinter

Ich hatte über jede mögliche Version versucht, hoffentlich hilft dies anderen.

l Steveo l
quelle