Donc, récemment, j'ai installé le WSL à partir du Windows Store et maintenant j'ai des problèmes avec python.
J'ai déjà python et certaines de ses bibliothèques installées sur mon Windows 10, mais chaque fois que je tape py
dans le terminal Ubuntu, il ne le comprend pas, il ne comprend que lorsque je tape "python3". Existe-t-il un moyen d'ajouter le py
commande pour activer python ?
Également en mode interactif ($python3 -i
), chaque fois que j'essaie d'import
toute bibliothèque (c'est-à-dire numpy) génère une erreur (ModuleNotFoundError: No module named 'numpy'
) alors que j'ai déjà installé numpy sur mon Windows.
C'est comme si le WSL agissait comme s'il ne pouvait même pas voir python et ses bibliothèques installées dans mes fenêtres !
une image de mon WSL en difficulté
Réponse acceptée :
Comme expliqué dans Sous-système Windows pour l'interopérabilité Linux avec Windows, certaines conditions doivent être remplies pour exécuter des programmes Windows à partir de la ligne de commande WSL :
Exécuter les outils Windows à partir de WSL
WSL peut invoquer des fichiers binaires Windows directement à partir de la ligne de commande WSL
en utilisant [binary name].exe. Par exemple, notepad.exe. Pour rendre les exécutables Windows
plus faciles à exécuter, le chemin Windows est inclus dans Linux $PATH
dans Fall Creators Update.
Certains éléments non pertinents ont été omis
Les fichiers binaires Windows doivent inclure l'extension de fichier, correspondre à la casse du fichier,
et être exécutables. Non exécutables, y compris les scripts batch. Les commandes natives
CMD telles que dir peuvent être exécutées avec la commande cmd.exe /C.
Donc, si votre version Windows de python3 est un exécutable standard, vous devriez pouvoir l'exécuter en tant que
python3.exe
Sinon (apparemment, cela inclut la version de python3 installée sur WindowsApps à partir du magasin Microsoft), vous devrez utiliser
cmd.exe /C python3.exe