web-dev-qa-db-fra.com

Module Tkinter introuvable sur Ubuntu

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

d'autre part...

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 

J'ai vérifié synaptic, Tkinter est installé. Puis j'ai trouvé ça--

S'il échoue avec "Aucun module nommé _tkinter", votre configuration Python doit être modifiée pour inclure ce module (module d'extension implémenté en C). Ne pas éditer Modules/Setup (il est obsolète). Vous devrez peut-être installer Tcl et Tk (si vous utilisez RPM, installez également les RPM -devel) et/ou éditez le script setup.py pour qu'il pointe vers les bons emplacements où Tcl/Tk est installé. Si vous installez Tcl/Tk aux emplacements par défaut, il suffit de réexécuter "make" pour créer l’extension _tkinter.

Je suppose que tkinter est toujours associé au vieux python dans mon pc. Comment puis-je changer cela pour que python3 puisse utiliser tkinter?

69
Jim Syyap

Puisque vous mentionnez synaptic, je pense que vous êtes sur Ubuntu. Vous devez probablement exécuter update-python-modules pour mettre à jour votre module Tkinter pour Python 3.

EDIT: Exécution de update-python-modules

Tout d’abord, assurez-vous d’avoir installé python-support:

Sudo apt-get install python-support

Ensuite, exécutez update-python-modules avec l’option -a pour reconstruire tous les modules:

Sudo update-python-modules -a

Je ne peux cependant pas garantir que tous vos modules seront construits, car il y a des changements d’API entre Python 2 et Python 3.

6
onteria_

Ce qui a fonctionné pour moi dans Ubuntu était en réalité juste:

Sudo apt-get install python3-tk

Pour Python 3.6:

Sudo apt-get install python3.6-tk

Je n'ai lu nulle part, j'ai simplement essayé, car la méthode de onteria_ ne semblait pas fonctionner pour moi.

266
Pinna_be

La réponse à votre question est que Tkinter est renommé tkinter en python3.

c'est-à-dire en minuscule

31
Nils Nyman

En python 3 Tkinter renommé tkinter

18
user2569010
Sudo apt-get install python3-tk
13
Roberto Júnior

Utilisez la commande suivante:

Sudo apt-get install python3-tk

Les commandes suivantes ne fonctionnent pas:

Sudo apt-get install python3-tkinter
Sudo apt-get install python3-Tkinter
pip3 install Tkinter
pip3 install tkinter
11
Kishan Kishore

cela fonctionne pour moi:

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

J'ai eu le même problème. J'ai essayé d'utiliser:

Sudo apt-get install python3-tk

cela semble fonctionner:

Reading package lists... Done
Building dependency tree
Reading state information... Done
python3-tk is already the newest version (3.5.1-1).
The following packages were automatically installed and are no longer required:
  linux-headers-4.4.0-21 linux-headers-4.4.0-21-generic linux-image-4.4.0-21-generic linux-image-extra-4.4.0-21-generic
Use 'Sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 188 not upgraded.

mais je ne peux toujours pas importer tkinker en python3.6.2.

alors j'essaye:

Sudo apt-get install python3.6-tk

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package python3.6-tk
E: Couldn't find any package by glob 'python3.6-tk'
E: Couldn't find any package by regex 'python3.6-tk'

c'est pourquoi?

1
Maoquan Zhang

Ajout de la solution que j'ai rencontrée avec python 3.4 sur Fedora 21. J'espère que cela aidera les personnes confrontées à un problème similaire.

Chacune de ces commandes installera tkinter:

Sudo yum install python3-tkinter
OR
Sudo dnf install python3-tkinter
1
MaNKuR

J'ai eu le même problème. J'ai essayé d'utiliser:

Sudo apt-get install python3-tk

Une erreur s'est produite indiquant que blt (> = 2.4z-7) n'est pas présent et n'est pas installable.

Je suis allé ici et l'ai installé manuellement. (Pour Ubuntu 14.04)

Ensuite, j'ai utilisé apt à nouveau et cela a fonctionné.

J'ai conclu que python3.4 dans Ubuntu n'était pas fourni avec le fichier .so requis pour poursuivre l'installation. Et blt était nécessaire pour le télécharger.

1
Mohit Sinha

J'ai trouvé cela à la recherche d'un correctif pour Python 3.5. 

Dans mon cas, je construisais python à partir des sources, voici ce que j'ai fait pour résoudre ce problème:

Ajoutez les en-têtes tkinter avec et reconstruisez python

Sudo apt-get install tk8.6-dev
Sudo make
1
orsonady

Ajout de solution pour CentOs 7 (python 3.6.x)

yum install python36-tkinter

J'avais essayé toutes les versions possibles, espérons que cela aiderait les autres.

1
l Steveo l

Si vous utilisez Ubuntu 18.04 avec python3.6, alors pip ou pip3 ne vous aidera pas. Vous devez installer tinker en utilisant la commande suivante:

Sudo apt-get install python3-tk
0
abhimanyu singh