Quindi, recentemente ho installato il WSL da Windows Store e ora ho dei problemi con python.
Ho già python e alcune delle sue librerie installate sul mio Windows 10, ma ogni volta che scrivo py
nel terminale di Ubuntu non lo capisce, capisce solo quando digito "python3". C'è un modo per aggiungere il py
comando per attivare python?
Anche in modalità interattiva ($python3 -i
), ogni volta che provo a import
qualsiasi libreria (cioè numpy) genera un errore (ModuleNotFoundError: No module named 'numpy'
) mentre ho già numpy installato sul mio Windows.
È come se il WSL si comportasse come se non riuscisse nemmeno a vedere python e le sue librerie installate nelle mie finestre!
un'immagine del mio WSL in difficoltà
Risposta accettata:
Come spiegato in Sottosistema Windows per l'interoperabilità di Linux con Windows, ci sono alcune condizioni che devono essere soddisfatte per eseguire i programmi Windows dalla riga di comando di WSL:
Esegui gli strumenti di Windows da WSL
WSL può richiamare i file binari di Windows direttamente dalla riga di comando WSL
utilizzando [binary name].exe. Ad esempio, blocco note.exe. Per semplificare l'esecuzione degli eseguibili Windows
, il percorso Windows è incluso in Linux $PATH
in Fall Creators Update.
Alcune cose irrilevanti omesse
I file binari di Windows devono includere l'estensione del file, corrispondere al caso del file
ed essere eseguibili. Non eseguibili inclusi gli script batch. I comandi nativi di CMD
come dir possono essere eseguiti con il comando cmd.exe /C.
Quindi, se la tua versione Windows di python3 è un normale eseguibile, dovresti essere in grado di eseguirlo come
python3.exe
Altrimenti (apparentemente questo include la versione di python3 installata su WindowsApps dal Microsoft Store) dovrai usare
cmd.exe /C python3.exe