Par T-PHP dans Développement
Vous codez avec Python 3 et vous rencontrez l'erreur suivante "ImportError: No module named tkinter" ?
Voici comment réparer ça afin que votre script fonctionne.
Dans ce tuto, j'utiliserai Ubuntu 18.04.1 LTS.
Si ce n'est pas déjà fait, la première chose à faire est d'installer python3-tk.
Pour cela, ouvrez le Terminal et saisissez la commande suivante :
sudo apt-get install python3-tk
Après avoir saisi votre mot de passe administrateur, l'installation démarre.
Il vous faudra valider l'espace disque utiliser afin de finaliser l'installation :
A la fin de l'installation, il faudra relancer les services afin que tkinter soit pris en compte :
Vous devriez désormais pouvoir lancer votre script avec Python3 !
Si la première solution ne fonctionne pas, il va falloir vérifier le script python qui pose problème.
En effet, l'erreur provient certainement d'une mauvaise importation de la librairie tkinter.
Il faut savoir que l'importation se fait légèrement différemment si vous êtes sur Python 2 ou sur Python 3.
Étant donné que nous utilisons ici Python 3, la ligne à insérer dans votre script est la suivante :
from tkinter import *
Si vous utiliser Python 2, la ligne à insérer est alors la suivante :
from Tkinter import *
Et oui, il n'y a que le T de "tkinter" qui est en majuscule pour Python 2 et en minuscule pour Python 3, c'est tout !
Si vous souhaitez que votre script fonctionne aussi bien sur Python 2 que sur Python 3, vous pouvez alors utiliser le code suivant :
try:
# Pour Python 2
from Tkinter import *
except ImportError:
# Pour Python 3
from tkinter import *
J'espère avoir pu résoudre votre soucis.
N'hésitez pas à laisser un petit commentaire pour me dire si ça a fonctionné chez vous.