Si je suis dans un environnement de conda qui a disons tenseur installé et si je vais à l'écran et ensuite python -c "import tensorflow";
, il est dit module non trouvé. Cependant cela fonctionne bien sans écran.
J'ai le même problème: j'ai activé un de mes environnements Conda, disons my_env , et je peux utiliser tensorflow dans my_env . Ensuite, je vais à l'écran. Ici, je ne peux plus importer tensorflow. C'est bizarre car sur l'écran, je vois toujours my_env activé dans "conda env list" ou tensorflow indiqué dans "conda list".
Une solution pour moi consistait à désactiver cet environnement avant de passer à l'écran. Après être passé à l'écran, j'active my_env . Ensuite, j'ai pu utiliser tensorflow inclus dans ce my_env .
Tout ce que vous avez à faire est de désactiver l'environnement avant d'entrer dans l'écran
source deactivate
Puis entrez dans l'écran
screen -R my_screen
Activez ensuite l'environnement
source activate myenv
Ce problème est créé en ayant une ligne semblable à suivre dans votre fichier $ HOME/.bashrc:
export PATH=$HOME/anaconda3/bin:$PATH
Une fois l’écran démarré, il exécutera votre script .bashrc à nouveau et le chemin sera ajouté à une autre version de $ HOME/anaconda3/bin. Même si vous réactivez votre environnement virtuel dans la session d'écran, le shell finira par utiliser la mauvaise copie de python.
La méthode recommandée pour résoudre ce problème avec Anaconda> 4.4 consiste à supprimer la ligne qui définit le chemin et à ajouter le texte suivant à votre fichier .bashrc.
. $HOME/anaconda3/etc/profile.d/conda.sh
Cela présente l’avantage supplémentaire que vous pouvez maintenant activer et désactiver les environnements anaconda à l’aide de la commande conda. par exemple.
conda activate myenv
Pour plus d'informations, consultez https://github.com/conda/conda/blob/master/CHANGELOG.md#440-2017-12-20