Come posso trovare dove Python è installato su Windows?


170

Voglio scoprire il mio percorso di installazione di Python su Windows. Per esempio:

C:\Python25

Come posso trovare dove è installato Python?


Dovresti dare maggiori informazioni. Sai che Python è installato, ma puoi eseguire Python o no? Nel mio caso, non l'ho installato; vari prodotti potrebbero averlo installato e voglio scoprire se esiste da qualche parte nel file system. L'interprete si chiamerebbe python.exe? Non ne ho idea.
David Spector,

Risposte:


340

Nell'interprete Python, digitare i comandi seguenti:

>>> import os
>>> import sys
>>> os.path.dirname(sys.executable)
'C:\\Python25'

E se ti trovi in ​​un virtualenv? Questo non funzionerà allora.
user60561,

1
@ user60561 Dovrebbe darti il ​​percorso dell'eseguibile Python di Virtualenv. Non conosco un modo per ottenere il sistema operativo Python, in quel caso, ma sarei interessato a sapere perché ne avresti bisogno, se fossi in esecuzione da un Virtualenv?
elo80ka,

Il mio script crea un virtualenv, quindi utilizza il sistema Python per farlo. Mi hai fatto pensare, forse non è necessario ... Lo controllerò lunedì, grazie!
user60561

Errore: "C: \ WINDOWS \ system32> import os 'import' non è riconosciuto come comando interno o esterno, programma eseguibile o file batch."
David Spector,

@David Spector: Mio male. Avrei dovuto notare che devi digitare quei comandi nell'interprete Python, aggiornerò la risposta :-)
elo80ka

64

Se hai python nella tua variabile di ambiente, puoi usare il seguente comando in cmd:

>>> dove python

o per ambiente unix

>>> quale pitone

immagine della riga di comando


Questa risposta è migliore perché non comporta la creazione e l'esecuzione di uno script ed è semplicemente molto più semplice. +1
applemonkey496

54

Sarebbe uno dei due

  • C: \ Python36
  • C: \ Users \ (L'utente che ha effettuato l'accesso) \ AppData \ Local \ Programmi \ Python \ Python36

2
my path of python 3.6 su win10:C:\Users\YANG.LEI\AppData\Local\Programs\Python\Python36-32
Lei Yang,

6
Il percorso Python può essere personalizzato liberamente durante l'installazione. Ho avuto diverse macchine che non ha nemmeno hanno ac: \ unità. Inoltre, i dati dell'applicazione locale non sono necessariamente sotto C:\Users.
Matteo Italia,

49

Se devi conoscere il percorso installato in Windows senza avviare l'interprete Python, dai un'occhiata al registro di Windows.

Ogni versione di Python installata avrà una chiave di registro in:

  • HKLM\SOFTWARE\Python\PythonCore\versionnumber\InstallPath
  • HKCU\SOFTWARE\Python\PythonCore\versionnumber\InstallPath

In Windows a 64 bit, sarà sotto la Wow6432Nodechiave:

  • HKLM\SOFTWARE\Wow6432Node\Python\PythonCore\versionnumber\InstallPath

questo sembra essere falso su Windows 7, almeno per Python 2.7
Sharkin il

Dove si trovano le informazioni su Windows 7? Se hai un computer Windows 7 a portata di mano, potresti fare una ricerca nel registro per Python e PythonCore? E vedi se trovi un valore InstallPath da qualche parte.
codeape

7
Nelle versioni a 64 bit di Windows (che probabilmente stai usando) sarà sotto la chiave Wow6432Node, IE HKLM \ SOFTWARE \ Wow6432Node \ Python \ PythonCore \ versionnumber \ InstallPath
piksel bitworks

Aggiorna la tua risposta con il commento di 'piksel bitworks. Ha funzionato per me.
Dinesh YGV,

1
È un bel modo, ma per usarlo è necessario conoscere l'attuale versione di Python. Sto ancora cercando un buon modo per rilevare il percorso python da utilizzare con il programma di installazione nsis.
PerryWerneck,

13

Sulla mia installazione di Windows, ottengo questi risultati:

>>> import sys
>>> sys.executable
'C:\\Python26\\python.exe'
>>> sys.platform
'win32'
>>>

(Puoi anche cercare sys.pathposizioni ragionevoli.)


ma come possiamo fare lo stesso usando il file batch?
Patrick,

@Patrick Penso python -c "import sys; print(sys.executable)"che funzionerà
wjandrea il

8

Nel syspacchetto puoi trovare molte informazioni utili sulla tua installazione:

import sys
print sys.executable
print sys.exec_prefix

Non sono sicuro di ciò che questo darà sul tuo sistema Windows, ma sul mio Mac executablepunta al binario di Python e exec_prefixalla radice dell'installazione.

Puoi anche provare questo per ispezionare il tuo sysmodulo:

import sys
for k,v in sys.__dict__.items():
    if not callable(v):
        print "%20s: %s" % (k,repr(v))

@GuoH possiamo fare lo stesso usando il file batch?
Patrick,

Potresti fare qualcosa del generepython -c "import sys; print sys.executable"
Guðmundur H,

7

Se si desidera il percorso Dopo un'installazione corretta, aprire prima CMD e digitare python o python -i

Si aprirà shell interattiva per te e quindi digitare

import sys

sys.executable

Premi invio e otterrai il percorso in cui è installato il tuo Python ...


Il problema che ho avuto con questa soluzione è che stavo eseguendo Python 2.7 e volevo eseguire l'aggiornamento a 3.6. Ho installato 3.6 ma quando digito python sulla riga di comando stavo ancora funzionando dal vecchio 2.7.
dal


5

Puoi cercare la "variabile ambientale per il tuo account". Se hai aggiunto Python nel percorso, verrà mostrato come "percorso" nel tuo account della variabile ambientale.

ma quasi sempre lo troverai in " C: \ Users \% Nome_utente% \ AppData \ Local \ Programmi \ Python \ Python_version "

la cartella ' AppData ' potrebbe essere nascosta, renderla visibile dalla sezione vista della barra degli strumenti .


4

Per sapere dove è installato Python è possibile eseguire where pythonnel cmd.exe.


(Questo post non sembra fornire una risposta alla domanda. Modifica la tua risposta o semplicemente pubblicala come commento alla domanda).
sɐunıɔ ןɐ qɐp

2
@ sɐunıɔ ןɐ qɐp In realtà è una risposta e potrebbe anche essere corretta. Non ho molta familiarità con Windows, ma in realtà sembra esserci un wherecomando che dovrebbe essere simile a quello whichsu Unix.
nodo

@anothernode: la qualità della risposta è pessima. Se capisci cosa l'autore sta cercando di dire, sei libero di modificarlo e risolverlo.
sɐunıɔ ןɐ qɐp

1
la qualità della risposta non è male, la qualità della domanda è. Posso confermare che where pythonfunziona su cmd.exe
Kay

3

Se qualcuno ha bisogno di farlo in C # sto usando il seguente codice:

static string GetPythonExecutablePath(int major = 3)
{
    var software = "SOFTWARE";
    var key = Registry.CurrentUser.OpenSubKey(software);
    if (key == null)
        key = Registry.LocalMachine.OpenSubKey(software);
    if (key == null)
        return null;

    var pythonCoreKey = key.OpenSubKey(@"Python\PythonCore");
    if (pythonCoreKey == null)
        pythonCoreKey = key.OpenSubKey(@"Wow6432Node\Python\PythonCore");
    if (pythonCoreKey == null)
        return null;

    var pythonVersionRegex = new Regex("^" + major + @"\.(\d+)-(\d+)$");
    var targetVersion = pythonCoreKey.GetSubKeyNames().
                                        Select(n => pythonVersionRegex.Match(n)).
                                        Where(m => m.Success).
                                        OrderByDescending(m => int.Parse(m.Groups[1].Value)).
                                        ThenByDescending(m => int.Parse(m.Groups[2].Value)).
                                        Select(m => m.Groups[0].Value).First();

    var installPathKey = pythonCoreKey.OpenSubKey(targetVersion + @"\InstallPath");
    if (installPathKey == null)
        return null;

    return (string)installPathKey.GetValue("ExecutablePath");
}

1
HKCU e HKLM non esisterebbero entrambi per la maggior parte degli utenti? Questo sembrerebbe mancare istanze python installate a livello globale.
giovedì

Sì, sembra che abbia creato un bug lì.
Peter,

2

Vai a C: \ Users \ USER \ AppData \ Local \ Programmi \ Python \ Python36 se non è lì quindi apri la console da windows + ^ R Quindi digita cmd e premi invio digita python se installato nel tuo file locale ti mostrerà la sua versione da lì digitare il seguente import os import sys os.path.dirname (sys.executable)


2

Se hai installato il pycomando, cosa che probabilmente fai, usa semplicemente l' --list-pathsargomento per il comando:

py --list-paths

Esempio di output:

Python installati trovati da py Launcher per Windows
-3,8-32 C: \ Users \ cscott \ AppData \ Local \ Programmi \ Python \ Python38-32 \ python.exe *
-2.7-64 C: \ Python27 \ python.exe

* Indica la versione attualmente attiva per gli script eseguiti utilizzando il pycomando.


1

Questo ha funzionato per me: C:\Users\Your_user_name\AppData\Local\Programs\Python

Il mio attualmente installato python versionè3.7.0

Spero che questo ti aiuti!


1

È generalmente

'C: \ Users \ nome utente \ AppData \ Local \ Programmi \ Python \ Python-versione'

o prova a usare (in cmd)

dove pitone


0

se sei ancora bloccato o hai questo

C:\\\Users\\\name of your\\\AppData\\\Local\\\Programs\\\Python\\\Python36

semplicemente sostituisci 2 \ con uno

C:\Users\akshay\AppData\Local\Programs\Python\Python36

0

Ho installato 2 e 3 e ho riscontrato lo stesso problema nel trovare 3. Fortunatamente, digitare path nel percorso di Windows mi ha permesso di trovare dove l'avevo installato. Il percorso era un'opzione quando ho installato Python che ho appena dimenticato. Se non hai selezionato l'impostazione del percorso durante l'installazione di Python 3 che probabilmente non funzionerà, a meno che non abbia aggiornato manualmente il percorso durante l'installazione. Nel mio caso era in c: \ Programmi \ Python37 \ python.exe


0

Se lo usi anaconda navigatorsu Windows, puoi anche andare enviornmentse scorrere gli rootambienti , l' ambiente indicherà dove è installato. Può essere utile se si desidera utilizzare questo ambiente quando è necessario collegarlo ad altre applicazioni, in cui si desidera integrare del codice Python.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.