Gestion d'Environnement Python : Maîtriser Conda en Quelques Commandes

Êtes-vous déjà devenu fou à cause de l'environnement Python ?

Le projet A nécessite Python 3.8, tandis que le projet B exige 3.10 ; l'installation d'une bibliothèque entraîne des conflits de dépendances et des incompatibilités de version ; le code qui fonctionnait parfaitement sur un ordinateur génère des erreurs sur un autre ; réinstallation de Python, suppression d'environnements, modification de chemins, après des heures de galère, le problème persiste.

Beaucoup pensent que leur code est défectueux, mais en réalité, ils ne savent pas gérer leurs environnements.

Chaque jour perdu à cause de problèmes d'environnement réduit votre efficacité à néant, entraînant heures supplémentaires, retours en arrière et stress. Fondamentalement, vous payez le prix du chaos.

Il n'est pas nécessaire de souffrir autant. Cet article vous montrera comment utiliser Conda pour résoudre définitivement tous les conflits d'environnement, les erreurs de dépendance et la confusion des versions, en une seule commande. Pas besoin de réinstaller votre système, ni de mémoriser des commandes complexes. Après avoir lu cet article, vous pourrez l'utiliser immédiatement et dire adieu aux cauchemars d'environnement.

  1. Qu'est-ce que Conda ?

Conda est un gestionnaire de paquets et d'environnements open source, principalement utilisé pour le développement Python, mais il supporte également d'autres langages de programmation (tels que R, C++, etc.).

  • Gestion de paquets : installation, mise à jour et désinstallation faciles de paquets Python (comme numpy, pandas), résolution des conflits de dépendances entre paquets.
  • Gestion d'environnements : création de plusieurs environnements virtuels indépendants, chacun pouvant avoir des versions Python et de paquets différentes (par exemple, un environnement avec Python 3.8, un autre avec Python 3.10), évitant les conflits entre projets.

Anaconda et Miniconda sont deux distributions de Conda :

  • Anaconda : version complète, pré-installée avec de nombreux paquets scientifiques courants (comme numpy, pandas, matplotlib), volumineuse (environ 3 Go).
  • Miniconda : version minimaliste, ne contenant que Conda et Python, légère (environ 50 Mo), vous installez les paquets dont vous avez besoin, plus flexible.

Il est recommandé d'utiliser Miniconda dès le départ pour une installation légère, en installant les paquets selon les besoins, afin d'éviter que les paquets pré-installés d'Anaconda ne consument trop d'espace.

Il est recommandé d'utiliser Miniconda dès le départ pour une installation légère, en installant les paquets selon les besoins, afin d'éviter que les paquets pré-installés d'Anaconda ne consument trop d'espace.

  1. Installation

Nous présentons principalement la méthode d'installation pour les serveurs Linux.

2.1 Installation via yum

  1. Commande de téléchargement
yum install conda


On peut voir que le référentiel EPEL du système contient justement le paquet RPM conda (version 4.10.3), mais le paquet installé via yum est une version simplifiée, qui peut être incomplète, obsolète et susceptible d'entrer en conflit avec le Python du système.

  1. Commandes de base
#Vérifier la version de Conda (pour confirmer l'installation réussie)
conda --version
#Mettre à jour Conda lui-même
conda update conda


  1. Désinstallation
  • Exécutez les commandes suivantes pour désinstaller le paquet principal conda + tous les paquets dépendants, et nettoyer automatiquement les dépendances inutiles :
#Désinstaller conda et les paquets associés
yum remove -y conda python3-conda 
#Nettoyer davantage le cache yum et les paquets inutiles
yum autoremove -y
yum clean all


  • La désinstallation via yum peut laisser quelques fichiers de configuration / cache résiduels, supprimez-les manuellement pour une suppression complète
#Supprimer les résidus des bibliothèques Python liées à conda (dossier Python système)
rm -rf /usr/lib/python3.6/site-packages/conda*
rm -rf /usr/lib64/python3.6/site-packages/conda*
#Supprimer les résidus des fichiers exécutables conda
rm -f /usr/bin/conda
#Supprimer les éventuels répertoires de cache
rm -rf /var/cache/yum/x86_64/8/epel/packages/conda*


2.2 Installation de Miniconda

  1. Téléchargez depuis le site officiel :

https://www.anaconda.com/download/success

  1. Après le téléchargement, exécutez le fichier .sh
bash Miniconda3-latest-Linux-x86_64.sh


Processus d'installation :

  • Appuyez sur Entrée pour lire le contrat
  • Entrez yes pour accepter
  • Appuyez sur Entrée pour le chemin (par défaut installé dans ~/miniconda3) sous root
  • En dernier, on vous demande si vous souhaitez que l'installeur initialise Miniconda3 ? Entrez yes
  1. Appliquer la configuration

Fermez le terminal et rouvrez-le, ou exécutez :

source ~/.bashrc


  1. Vérifier si l'installation a réussi
conda --version


  1. Désactiver l'entrée automatique dans l'environnement de base
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/
conda config --set show_channel_urls yes


  1. Nous constatons que Miniconda n'a pas de complétion de commande, ce qui est inconfortable. Activez la complétion de commande.
# D'abord, quittez l'environnement si vous y êtes déjà
conda deactivate


#1. Assurez-vous que bash-completion est installé (dépendance principale pour la complétion)
yum install-y bash-completion > /dev/null 2>&1

#2. Videz l'ancienne configuration de complétion conda (pour éviter les conflits)/si inexistant, passez cette étape
sed -i '/=== Configuration de complétion Conda ===/,/EOF/d' ~/.bashrc

#3. Écrivez une nouvelle configuration de complétion par préfixe (essentiel)
cat >> ~/.bashrc << 'EOF'
Complétion par préfixe de commande Conda (pour réaliser des effets comme ac→activate)
_completion_conda_prefix() {
local cur prev words cword
_init_completion -n = || return
# Liste des sous-commandes principales Conda (pour la correspondance par préfixe)
local commandes_conda="activer désactiver créer env lister installer supprimer mettreàjour config info init nettoyer chercher construire exécuter"
# Étape 1 : compléter les sous-commandes après conda (entrée conda ac → complété par activer)
if [[ $cword -eq 1 ]]; then
    # Correspondance par préfixe des sous-commandes
    COMPREPLY=($(compgen -W "$commandes_conda" -- "$cur"))
# Étape 2 : compléter les paramètres après les sous-commandes (comme activer pour compléter le nom d'environnement)
elif [[ $prev == "activer" ]]; then
    # Obtenir tous les noms d'environnement conda
    local environnements=$(conda env list | grep -v '^#' | awk '{print $1}' | grep -v '^$')
    COMPREPLY=($(compgen -W "$environnements" -- "$cur"))
fi
return 0
}
# Enregistrement de la fonction de complétion pour la commande conda
complete -F _completion_conda_prefix conda
EOF

# 4. Chargez immédiatement la configuration
source ~/.bashrc


Vous pouvez maintenant tester ! L'expérience est excellente.

  1. Processus d'utilisation

3.1 Diagramme simple du processus d'utilisation

  1. Créer un environnement Python 12
Exemple : créer un environnement nommé "environnement_dev" avec Python version 3.12
conda create -n environnement_dev python=3.12


  1. Lister tous les environnements
#Lister tous les environnements créés
conda info --envs  # ou conda env list


  1. Initialiser
conda init bash


  1. Activer l'environnement

Ouvrez un nouveau terminal

conda activate environnement_dev


  1. Quitter l'environnement actuel
conda deactivate


  1. Supprimer un environnement
conda remove -n environnement_dev --all


  1. Cloner un environnement
conda create -n environnement_clone --clone environnement_dev


  1. Commandes d'utilisation standard :
#1. Créer un nouvel environnement (spécifier le nom et la version Python)
Exemple : créer un environnement nommé "environnement_dev" avec Python version 3.12
conda create -n environnement_dev python=3.12

#2. Activer l'environnement (utiliser l'environnement)
#Windows
conda activate environnement_dev

#Mac/Linux
source activate environnement_dev

#3. Quitter l'environnement actuel
conda deactivate

#4. Lister tous les environnements créés
conda info --envs  # ou conda env list

#5. Supprimer un environnement (opération à faire avec prudence)
conda remove -n environnement_dev --all

#6. Cloner un environnement (créer un nouvel environnement basé sur un existant)
conda create -n environnement_clone --clone environnement_dev

#7. Désactiver l'entrée automatique dans l'environnement bash
conda config --set auto_activate_base false


3.2 Gestion des paquets :

1. Installer des paquets dans l'environnement activé
conda install numpy  # Installer la dernière version de numpy
conda install numpy=1.24.0  # Installer une version spécifique du paquet
conda install numpy pandas  # Installer plusieurs paquets simultanément

2. Voir les paquets installés dans l'environnement actuel
conda list

3. Mettre à jour les paquets
conda update numpy  # Mettre à jour un paquet spécifique
conda update --all  # Mettre à jour tous les paquets de l'environnement actuel

4. Désinstaller des paquets
conda remove numpy

5. Rechercher des paquets (voir les versions disponibles pour installation)
conda search numpy


3.3 Problèmes courants :

  • Nom d'environnement : évitez d'utiliser des caractères chinois, des espaces ou des caractères spéciaux, privilégiez les lettres minuscules + underscores (comme environnement_de_analyse).
  • Environnement par défaut : Conda crée un environnement nommé base après installation, évitez d'y installer trop de paquets, gar-le-le propre.
  • Accélération via miroir : le téléchargement depuis les sources étrangères est lent, vous pouvez configurer des miroirs nationaux (comme le miroir de Tsinghua) :
Ajouter le miroir de Tsinghua (temporaire, pour un usage permanent, modifiez le fichier de configuration)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes


  • Exportation / importation d'environnement : utile pour partager l'environnement d'un projet avec d'autres :
#Exporter les informations des paquets de l'environnement actuel vers un fichier yaml
conda env export > environnement.yml
#Créer un environnement à partir d'un fichier yaml
conda env create -f environnement.yml


Un environnement bien organisé apporte la sérénité.

Conda n'est qu'un outil, mais il vous aide à remettre de l'ordre dans votre vie de développement chaotique.

Cet article devrait vous aider à dire adieu définitivement aux conflits de dépendances, aux erreurs de version et aux pannes d'environnement, vous faisant économiser de nombreuses heures de travail inutile.

Étiquettes: Python conda Gestion d'Environnement Virtualisation Développement Logiciel

Publié le 6 juin à 18h07