J'ai deux environnements Anaconda:
L'environnement de base est l'environnement par défaut et n'apparaît pas dans le sous-répertoire Anaconda envs
. La base est activée par défaut et en particulier lors de l'exécution des commandes ci-dessous.
Lorsque j'exécute python à partir de l'invite Anaconda (ou d'une autre invite que j'ai configurée pour Anaconda), l'importation de numpy
fonctionne sans problème.
Cependant, lorsque j'exécute mes scripts à partir de mon IDE (en exécutant C:\my\path\to\Anaconda3\python.exe myscript.py
), l'importation de numpy
échoue. Par conséquent, j'ai installé numpy
via pip et je me suis retrouvé avec une installation cassée. import numpy
résultats import numpy
maintenant dans
Traceback (most recent call last): File "D:\GoogleDrive\_Backup\Programmieren\Datathlon\econ_model.py", line 1, in <module> import numpy as np File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\__init__.py", line 140, in <module> from . import _distributor_init File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\_distributor_init.py", line 34, in <module> from . import _mklinit ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.
Autant que je sache, le problème est dû à l'utilisation de différentes versions de numpy. (Je veux la version compatible mkl, cependant).
Le fait que la bonne version de numpy
ne soit pas trouvée me laisse deviner que j'ai plusieurs environnements python et que le mauvais est appelé par mon IDE. Je n'ai aucune idée de comment cela peut être possible, car Anaconda est la seule ressource python sur mon PC.
Comment puis-je appeler la bonne version de python en dehors de l'invite anaconda? Comment puis-je configurer python / Anaconda pour que la version correcte soit appelée par défaut?
Je suis conscient que l'activation de l'environnement de base résout le problème lorsque vous travaillez dans un shell. Mais si j'exécute une seule commande, c'est-à-dire simplement appeler le script python sans ouvrir de shell avant, je ne peux rien activer (puis-je?).
Détails techniques:
3 Réponses :
Vous pouvez conda activate myEnvName
. Ensuite, appeler python sur shell vous apportera le python souhaité. Lors de l'installation des packages, sélectionnez toujours dans quel environnement vous souhaitez qu'il soit installé. L'environnement par défaut est de base
Merci d'avoir répondu. Comme je l'ai dit, la base est active et était active lorsque j'ai installé les packages. En fait, tout fonctionne dans l'environnement de base à partir de l'invite anaconda. Alors qu'est-ce qui ne va pas dans le cas que j'ai décrit?
Pouvez-vous l'exécuter sur le shell et commenter la sortie? import numpy; print(numpy.__file__)
Sûr. La sortie est C:\my\path\to\Anaconda3\lib\site-packages\numpy\__init__.py
essayez pip uninstall numpy
, puis conda install numpy
. Évitez d'utiliser pip lorsque vous avez conda. Vérifiez également cette solution: github.com/ContinuumIO/anaconda-issues/issues / ...
J'ai terminé l' conda install numpy
avant même d'essayer pip. Comme je l'ai dit, numpy fonctionne bien dans le shell, mais ne fonctionne pas en dehors du shell.
après la pip uninstall numpy
, numpy n'est ni disponible ni à l'intérieur ni à l'extérieur du shell. conda install numpy
me dit que numpy est déjà installé. J'ai donc lancé conda remove numpy
et conda install numpy
nouveau. Le résultat est que numpy n'est encore disponible nulle part, mais anaconda me dit que le paquet est installé ...
Essayez d'analyser la différence entre import sys; print(sys.path)
dans le shell et dans votre IDE. Vérifiez également le chemin `C: \ ProgramData \ Anaconda3 \ lib \ site-packages` si numpy y est installé.
print(sys.path)
me donne exactement le même résultat lorsqu'il est exécuté de l'intérieur et de l'extérieur du shell.
Peut - être que cela peut aider. Cela devrait être un problème avec pydev. Je recommande de passer à vscode si vous le pouvez.
Ce n'est certainement pas un problème PyDev, car le même problème se produit lorsque j'exécute la virgule à partir de cmd.exe ou que j'utilise simplement la fenêtre d'exécution (Win + R). J'ai maintenant supprimé et réinstallé complètement Anaconda mais j'ai rencontré d'autres problèmes.
Vous en avez assez d'activer les environnements avec une configuration de pile? Cela permet à mes applications d'utiliser deux environnements différents en même temps avec différentes versions de Python sur chacun.
conda activate base && conda activate --stack myEnv
J'ai eu le même problème que le vôtre, j'ai donc utilisé la commande suivante sous "Exécuter en tant qu'administrateur" dans mon invite de commande, et tout fonctionne bien par la suite
set CONDA_DLL_SEARCH_MODIFICATION_ENABLE=1