web-dev-qa-db-fra.com

ImportError DLL échec du chargement lors de l'importation de _tkinter

J'utilise Python 2.7.2 et Windows 7. J'ai effectué une recherche sur Internet, une aide et d'autres sources, mais je ne trouve pas de réponse à mon problème. 

Une de mes sources importe tkinter, et celle-ci importe _tkinter. En ce moment, il est écrit ImportError DLL load failed

 Traceback (most recent call last): File "NERO/show_image.py", line 13,
 in <module> import Tkinter File "C:\Python27\lib\lib-tk\Tkinter.py", line 38,
 in <module> import FixTk File "C:\Python27\lib\lib-tk\FixTk.py", line 65,
 in <module> import _tkinter ImportError: DLL load failed: %1 is not a valid Win32 application.
 2012-Jan-04 12:27:21.889374 (M) [python] Finished process 

J'ai cherché _tkinter et je l'ai trouvé dans Python27/libs en tant que fichier lib.

Sur de nombreux sites, il est conseillé d'installer tk/tcl ou tkinter, mais je ne trouve pas d'installation séparée pour Windows. 

Utilisation de Windows x86 MSI Installer (2.7) à partir de http://www.python.org/getit/releases/2.7/ . Dans Windows 7 64 bits. La version python est en 32 bits.

28
paduraru2009

J'obtenais cette erreur en essayant d'utiliser matplotlib dans une application simple.

Désinstallez Python et supprimez son dossier de votre C-Drive . Téléchargez et installez du python 64 bits . Suivez ceci pour installer pip sur votre machine . http://www1.cmc.edu/pages/faculty/alee/cs40/penv/installFlaskOnWindows.html Ce fut finalement ce qui a fonctionné pour moi 

0
Ishani Pandey

J'ai eu un problème similaire lors de l'importation de Tkinter sous Windows 7 64 bits - il semble que la bibliothèque 64 bits se trouvait toujours dans le dossier libs d'une installation précédente de python 64 bits.

La désinstallation correcte de python 64 bits, puis la réparation à l'aide du programme d'installation 32 bits ont résolu le problème pour moi. Vous n'avez pas besoin d'utiliser python 64 bits.

23
David Jacka

Réinstallez Python.

Si cela ne fonctionne toujours pas, il existe une autre solution simple:

  1. Désinstallez votre python actuel. Supprimez le dossier Python27 entièrement de votre lecteur C:.
  2. Téléchargez et installez la version 64 bits de Python à partir de http://www.python.org/download/ .
  3. La prochaine fois, ne mélangez pas votre application 32 bits avec un système d'exploitation 64 bits lorsqu'un choix 64 bits est disponible pour l'application!
5
Hossein

J'avais le même problème et pouvais désinstaller Python 2.7 (à l'aide du service de désinstallation de Windows 7), puis le réinstaller à partir d'ici: python-2.7.6.msi

De plus, si vous souhaitez garantir la conformité 64 bits de vos bibliothèques Python, le site de liste de bibliothèques suivant peut constituer une excellente ressource . Il possède de nombreuses versions 64bit des bibliothèques python.

3
user2506472

S'il vous plaît, ne réinstallez pas Python pour cela. Un correctif simple peut résoudre ce problème comme ci-dessous:

  1. Recherchez le fichier matplotlibrc dans Python27\Lib\site-packages\matplotlib\mpl-data\matplotlibrc.
  2. Ouvrir à l'aide du bloc-notes
  3. Modifiez le paramètre backend en 'backend: Qt5Agg'

Et ce sera résolu. Pas besoin de réinstaller.

2
AbhiGupta

J'avais un problème similaire. Ma version Python était 2.7.12 et 64 bits et j'utilisais Windows 10, système d'exploitation 64 bits. J'ai essayé d'importer Tkinter et ce que je suis rentré était

ImportError: DLL load failed: %1 is not a valid Win32 application

J'ai désinstallé Python et enlevé toutes les traces. J'ai ensuite installé Python 2.7.14 (32 bits) et cela semble avoir résolu mon problème. Je ne reçois plus ce message d'erreur.

1
Butterscotch

RESOLU sans rien réinstaller :

1-ajoutez ces 3 lignes à votre setup.py:

...
import os
os.environ['TCL_LIBRARY']= r'C:\<your python folder>\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'C:\<your python folder>\tcl\tk8.6'
...
setup(
... 
) 

2- copie tcl86t.dll et tk86t.dll de C:\<your python folder>\DLLs à <your project folder> (où vous avez un fichier de commandes, setup.py).

3- / ajoute "include_files": ["tcl86t.dll", "tk86t.dll"] à option dans votre fichier setup.py, quelque chose comme:

options= { 'build_exe':{'packages':[.....], "include_files": ["tcl86t.dll", "tk86t.dll"]}},

remarque: si vous n'avez pas trouvé tcl86t.dll et tk86t.dll dans le dossier DLLs comme indiqué à l'étape 2, essayez à nouveau de la rechercher, mais en utilisant l'onglet de recherche dans les DLL dossier cette fois.

1
SAADOV

Suppression de python 64 bits et réparation sur python 32 bits ont fonctionné pour moi Système d'exploitation: Windows Server 2008 64 bits.

0
Jeremy

Si Python a été installé par OsGeo4W , vous devez également installer les packages python-tcltk et/ou python3-tcltk dans l'outil de configuration OsGeo4W.

0
SzieberthAdam

J'ai également rencontré ce problème, car j'utilise python 64 bits. Peut-être que python 64 bits n’a pas un bon support.

Mon moyen est de le résoudre:

  1. Désinstallez python 64 bits.
  2. Installez python 32 bits.
  3. Désinstallez le package 64 bits. pip uninstall xxx.
  4. Installez le package 32 bits. pip install xxx.
0
Raven

J'ai beaucoup de paquets python installés sur ma machine, je ne voulais donc pas désinstaller et réinstaller tout le python. Je l'ai fait comme suit et le problème a été résolu:

  1. Remplacez votre dossier personnel C:\Python27 par un autre nom, par exemple C:\Python27_old.

  2. Installer un nouveau Python27 sur votre ordinateur (32 bits)

  3. Copiez le dossier tcl et les DLL du python fraîchement installé dans l'ancien (Avant cette étape, effectuez une copie de tcl et des DLL de C:\Python27_old pour le récupérer si vous rencontrez un problème lors des étapes suivantes.)

C:\Python27\tcl Copier et remplacer par C:\Python27_old

C:\Python27\DLLs Copier et remplacer par C:\Python27_old

  1. Supprimer le C:\Python27
  2. Renommez le C:\Python27_old en C:\Python27

Faites attention à obtenir une copie de sauvegarde de votre dossier tcl et DLL pour le récupérer au cas où vous auriez un autre problème.

Pour Windows 10, 

  1. Désinstallez toutes les versions de Python
  2. Installez Python 3.x (votre dernière version) avec la variable PATH
  3. python -mpip install -U matplotlib
  4. Installez Python x.x (vos autres versions) sans variable PATH

Terminé. Essayez de relancer vos scripts.

0
Andrew Pankow