Anaconda est installé sur mon ordinateur et j'aimerais le mettre à jour. Dans Navigator, je peux voir que plusieurs packages individuels peuvent être mis à jour, mais aussi un package anaconda
qui a parfois un numéro de version et parfois dit custom
. Comment je procède?
Dans la plupart des cas, lorsque vous dites que vous souhaitez mettre à jour Anaconda, vous devez exécuter la commande suivante:
conda update --all
(Mais ceci devrait être précédent de conda update -n root conda
pour que vous ayez la dernière version conda
installée)
Ceci mettra à jour tous les paquetages de l’environnement actuel vers la dernière version. Les petits caractères étant qu’il peut utiliser une version plus ancienne de certains paquetages afin de satisfaire les contraintes de dépendance (souvent cela ne sera pas nécessaire et quand cela sera nécessaire). le planificateur de forfaits fera de son mieux pour en minimiser l’impact).
Ceci doit être exécuté à partir de la ligne de commande. Le meilleur moyen de s'y rendre est d'utiliser Anaconda Navigator, ensuite l'onglet "Environnements", puis cliquez sur le triangle en regard de l'environnement root
, en sélectionnant "Ouvrir le terminal":
Cette opération ne mettra à jour que l'environnement sélectionné (dans ce cas, l'environnement root
). Si vous souhaitez mettre à jour d'autres environnements, vous pouvez répéter le processus ci-dessus, mais cliquez d'abord sur l'environnement. Quand il est sélectionné, un marqueur triangulaire se trouve à droite (voir image ci-dessus, étape 3). Ou, à partir de la ligne de commande, vous pouvez fournir le nom de l’environnement (-n envname
) ou le chemin d’accès (-p /path/to/env
), par exemple pour mettre à jour votre environnement dspyr
à partir de la capture d’écran ci-dessus:
conda update -n dspyr --all
Si vous souhaitez uniquement mettre à jour un package individuel, cliquez simplement sur la flèche bleue ou le numéro de version bleu dans Navigator, par exemple. pour astroid
ou astropy
dans la capture d'écran ci-dessus, et cela taguera ces paquets pour une mise à niveau. Lorsque vous avez terminé, vous devez cliquer sur le bouton "Appliquer":
Ou à partir de la ligne de commande:
conda update astroid astropy
Si vous ne vous souciez pas des versions de paquetages et que vous voulez juste "le dernier ensemble de tous les paquets de la distribution Anaconda standard, tant qu'ils fonctionnent ensemble", alors vous devriez jetez un coup d'oeil à cet article .
Dans la plupart des cas, la mise à jour du paquet Anaconda dans la liste des paquets aura un résultat surprenant: vous pouvez en réalité rétrograder beaucoup de paquets (en fait, cela est probable si la version est custom
). Le Gist ci-dessus fournit des détails.
Votre environnement root
n'est probablement pas un bon endroit pour essayer de gérer un ensemble exact de packages: il s'agira d'un espace de travail dynamique avec de nouveaux packages installés et des packages mis à jour de manière aléatoire. Si vous avez besoin d'un ensemble exact de paquets, créez un environnement conda pour les contenir. Grâce au cache des paquets et à la manière dont la liaison de fichiers est utilisée, cette opération est généralement i) rapide et ii) consomme très peu d'espace disque supplémentaire. Par exemple.
conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk
Le conda documentation a plus de détails et d’exemples.
Rien de tout cela ne va aider à mettre à jour les packages qui ont été installés à partir de PyPI via pip
ou les packages installés à l'aide de python setup.py install
. conda list
vous donnera des indications sur les paquets Python basés sur les pip que vous avez dans un environnement, mais cela ne fera rien de spécial pour les mettre à jour.
C'est à peu près exactement la même histoire, à l'exception du fait que vous ne pourrez peut-être pas mettre à jour l'environnement root
s'il a été installé par quelqu'un d'autre (disons à /opt/anaconda/latest
). Si vous ne pouvez pas mettre à jour les environnements que vous utilisez, vous devriez pouvoir cloner puis mettre à jour:
conda create -n myenv --clone root
conda update -n myenv --all
Si vous essayez de mettre à jour votre version d’Anaconda vers une nouvelle version, vous remarquerez que l’exécution du nouveau programme d’installation ne fonctionnera pas, car elle se plaint que le répertoire d’installation est non vide.
Donc, vous devriez utiliser conda pour mettre à jour comme indiqué par le document officiel :
conda update conda
conda update anaconda
Cela empêche l'erreur:
ERREUR conda.core.link:_execute(502): Une erreur s'est produite lors de la désinstallation du paquet 'defaults :: conda-4.5.4-py36_0' . PermissionError (13, 'L'accès est refusé')
Ouvrez "command or conda Prompt" et exécutez:
conda update conda
conda update anaconda
C'est une bonne idée d'exécuter les deux commandes deux fois (une après l'autre) pour être sûr que tous les fichiers de base sont mis à jour.
Cela devrait vous ramener aux dernières «versions», qui contiennent des paquetages sélectionnés par les employés de Continuum pour bien fonctionner ensemble.
Si vous voulez que la dernière version de chaque paquet soit exécutée (cela peut conduire à un environnement unstable):
conda update --all
J'espère que cela t'aides.
Sources:
Si vous avez du mal à obtenir, par exemple, de la version 3.3.x à la version 4.x (conda update conda "ne fonctionne pas" pour passer à la version suivante) puis essayez-le plus précisément, comme ceci:
conda install conda=4.0 (or conda install anaconda=4.0)
https://www.anaconda.com/blog/developer-blog/anaconda-4-release/
Voici la meilleure pratique (dans mon humble expérience). La sélection de ces packages quatre _ mettra également à jour toutes les autres dépendances avec les versions appropriées, ce qui vous aidera à maintenir la cohérence de votre environnement. Ce dernier problème est un problème commun que d’autres ont exprimé dans des réponses précédentes. Cette solution n'a pas besoin du terminal.
Sur Mac, ouvrez le terminal et exécutez les 2 commandes suivantes.
conda update conda
conda update anaconda
veillez à exécuter chaque commande plusieurs fois pour mettre à jour la version actuelle.
en utilisant Windows 10. Pour ceux qui débutent dans le jeu (comme moi), dans lesquels python ressemble vraiment à aller à la bibliothèque (de code), la mise à jour suivante met tout en place et installe également de nouveaux packages, y compris une mise à jour python (pour moi, cela était 3.7.3):
sur le shell, essayez ce qui suit (assurez-vous de changer l’emplacement où vos données Anaconda3 sont installées). il faut du temps pour tout mettre à jour.
conda update - préfixe X:\XXXXData\Anaconda3 anaconda
conda create -n py37 -c anaconda anaconda=5.3.1
conda env export -n py37 --file env.yaml
localisez env.yaml dans C:\Windows\System32 et exécutez la commande en tant qu'administrateur
conda env update -n root -f env.yaml
alors ça marche!
La réponse de @InLaw était assez précise . Pour compléter, si vous avez par défaut python2
, vous pouvez passer à python3
avec une aliase.
Il suffit de taper $ alias python=python3
Pour annuler, $ unalias python