Comment puis-je trouver où Python est installé sur Windows?

170

Je veux connaître mon chemin d'installation Python sur Windows. Par exemple:

C:\Python25

Comment puis-je trouver où Python est installé?

Fang-Pen Lin
la source
Vous devriez donner plus d'informations. Vous savez que Python est installé, mais pouvez-vous exécuter Python ou non? Dans mon cas, je ne l'ai pas installé; divers produits l'ont peut-être installé et je veux savoir s'il existe quelque part dans le système de fichiers. L'interpréteur s'appellerait-il python.exe? Je n'ai aucune idée.
David Spector

Réponses:

340

Dans votre interpréteur Python, tapez les commandes suivantes:

>>> import os
>>> import sys
>>> os.path.dirname(sys.executable)
'C:\\Python25'
elo80ka
la source
Et si vous êtes dans un virtualenv? Cela ne fonctionnera pas alors.
user60561
1
@ user60561 Il devrait vous donner le chemin vers l'exécutable Python de Virtualenv. Je ne connais pas un moyen d'obtenir le python du système d'exploitation, dans ce cas, mais je serais intéressé de savoir pourquoi vous en auriez besoin, si vous exécutiez à partir d'un Virtualenv?
elo80ka
Mon script crée un virtualenv, il utilise donc le système python pour le faire. Vous m'avez fait réfléchir, peut-être que ce n'est pas nécessaire… Je vais vérifier lundi, merci!
user60561
Erreur: "C: \ WINDOWS \ system32> import os 'import' n'est pas reconnu comme une commande interne ou externe, un programme utilisable ou un fichier de commandes."
David Spector
@David Spector: Mon mal. J'aurais dû noter que vous devez taper ces commandes dans l'interpréteur Python, je vais mettre à jour la réponse :-)
elo80ka
64

Si vous avez python dans votre variable d'environnement, vous pouvez utiliser la commande suivante dans cmd:

>>> où python

ou pour l'environnement unix

>>> quel python

image de ligne de commande

Aekansh Kansal
la source
Cette réponse est meilleure car elle n'implique pas de créer et d'exécuter un script, et c'est simplement beaucoup plus facile. +1
applemonkey496
54

Ce serait l'un ou l'autre

  • C: \ Python36
  • C: \ Users \ (votre utilisateur connecté) \ AppData \ Local \ Programs \ Python \ Python36
Amol Manthalkar
la source
2
mon chemin de python 3.6 sur win10:C:\Users\YANG.LEI\AppData\Local\Programs\Python\Python36-32
Lei Yang
6
Le chemin Python peut être personnalisé librement lors de l'installation. J'avais plusieurs machines qui n'avaient même pas ac: \ drive. En outre, les données d'application locales ne sont pas nécessairement sous C:\Users.
Matteo Italia
49

Si vous avez besoin de connaître le chemin d'installation sous Windows sans démarrer l'interpréteur python, jetez un œil dans le registre Windows.

Chaque version de Python installée aura une clé de registre dans:

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

Sous Windows 64 bits, ce sera sous la Wow6432Nodeclé:

  • HKLM\SOFTWARE\Wow6432Node\Python\PythonCore\versionnumber\InstallPath
codeape
la source
cela semble être faux sur Windows 7, au moins pour python 2.7
sharkin
Où se trouvent les informations sur Windows 7? Si vous avez un ordinateur Windows 7 à portée de main, pourriez-vous effectuer une recherche dans le registre pour Python et PythonCore? Et voyez si vous trouvez une valeur InstallPath quelque part.
codeape
7
Dans les versions 64 bits de Windows (que vous utilisez probablement), ce sera sous la clé Wow6432Node, IE HKLM \ SOFTWARE \ Wow6432Node \ Python \ PythonCore \ versionnumber \ InstallPath
piksel bitworks
Veuillez mettre à jour votre réponse avec le commentaire de 'piksel bitworks. Cela a fonctionné pour moi.
dinesh ygv
1
C'est un bon moyen, mais pour l'utiliser, il faut connaître la version actuelle de python. Je suis toujours à la recherche d'un bon moyen de détecter le chemin python à utiliser avec l'installateur nsis.
PerryWerneck
13

Sur mon installation Windows, j'obtiens ces résultats:

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

(Vous pouvez également rechercher sys.pathdes emplacements raisonnables.)

gimel
la source
mais comment pouvons-nous faire la même chose en utilisant un fichier batch?
Patrick
@Patrick je pense que python -c "import sys; print(sys.executable)"cela fonctionnera
wjandrea
8

Dans le syspackage, vous pouvez trouver de nombreuses informations utiles sur votre installation:

import sys
print sys.executable
print sys.exec_prefix

Je ne suis pas sûr de ce que cela donnera sur votre système Windows, mais sur mon Mac, il executablepointe vers le binaire Python et exec_prefixla racine d'installation.

Vous pouvez également essayer ceci pour inspecter votre sysmodule:

import sys
for k,v in sys.__dict__.items():
    if not callable(v):
        print "%20s: %s" % (k,repr(v))
Guðmundur H
la source
@GuoH pouvons-nous faire la même chose en utilisant un fichier batch?
Patrick
Vous pourriez faire quelque chose commepython -c "import sys; print sys.executable"
Guðmundur H
7

Si vous voulez le chemin après une installation réussie, ouvrez d'abord votre CMD et tapez python ou python -i

Il ouvrira le shell interactif pour vous, puis tapez

import sys

sys.executable

Appuyez sur Entrée et vous obtiendrez le chemin où votre python est installé ...

Rutvik Vijaybhai Bhimani
la source
Le problème que j'ai eu avec cette solution est que j'utilisais python 2.7 et que je voulais passer à la version 3.6. J'ai installé la version 3.6, mais lorsque je tape python sur la ligne de commande, j'exécutais toujours l'ancienne version 2.7.
tzg
7

Un moyen simple est

1) open CMD
2) type >>where python
BigData-Guru
la source
5

Vous pouvez rechercher la "variable d'environnement pour votre compte". Si vous avez ajouté le Python dans le chemin, il s'affichera comme "chemin" dans votre compte de variable d'environnement.

mais presque toujours, vous le trouverez dans " C: \ Users \% User_name% \ AppData \ Local \ Programs \ Python \ Python_version "

le dossier ' AppData ' peut être masqué, rendez-le visible dans la section d' affichage de la barre d' outils .

Amit Gupta
la source
4

Pour savoir où Python est installé, vous pouvez l'exécuter where pythondans votre cmd.exe.

un autre nœud
la source
(Ce message ne semble pas fournir de réponse à la question. Veuillez modifier votre réponse ou simplement la publier en tant que commentaire sur la question).
sɐunıɔ ןɐ qɐp
2
@ sɐunıɔ ןɐ qɐp C'est en fait une réponse et elle pourrait même être correcte. Je ne suis pas très familier avec Windows, mais il semblewhere en fait y avoir une commande qui est censée être similaire à celle whichsous Unix.
anothernode
@anothernode: La qualité de la réponse est très mauvaise. Si vous comprenez ce que l'auteur essaie de dire, vous êtes libre de le modifier et de le corriger.
sɐunıɔ ןɐ qɐp
1
la qualité de la réponse n'est pas mauvaise, la qualité de la question l'est. Je peux confirmer les where pythontravaux sur cmd.exe
Kay
3

Si quelqu'un a besoin de le faire en C #, j'utilise le code suivant:

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");
}
Peter
la source
1
HKCU et HKLM n'existeraient-ils pas tous les deux pour la plupart des utilisateurs? Cela semblerait manquer les instances python installées globalement.
jtbr
Oui, il semble que j'ai créé un bug là-bas.
Peter
2

Allez dans C: \ Users \ USER \ AppData \ Local \ Programs \ Python \ Python36 s'il n'y est pas puis ouvrez la console par windows + ^ R Puis tapez cmd et appuyez sur enter type python s'il est installé dans votre fichier local, il vous montrera sa version à partir de là, tapez le suivant import os import sys os.path.dirname (sys.executable)

SATYAJIT MAITRA
la source
2

Si la pycommande est installée, ce que vous faites probablement, utilisez simplement l' --list-pathsargument de la commande:

py --list-paths

Exemple de sortie:

Pythons installés trouvés par py Launcher pour Windows
-3.8-32 C: \ Users \ cscott \ AppData \ Local \ Programs \ Python \ Python38-32 \ python.exe *
-2.7-64 C: \ Python27 \ python.exe

Le * indique la version actuellement active des scripts exécutés à l'aide de la pycommande.

carlin.scott
la source
1

Cela a fonctionné pour moi: C:\Users\Your_user_name\AppData\Local\Programs\Python

Mon actuellement installé python versionest3.7.0

J'espère que cela t'aides!

Prashant Gonga
la source
1

C'est généralement

'C: \ Users \ nom-utilisateur \ AppData \ Local \ Programs \ Python \ Python-version'

ou essayez d'utiliser (en cmd)

où python

utkarsh2299
la source
0

si vous êtes toujours coincé ou si vous obtenez ceci

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

il suffit de remplacer 2 \ par un

C:\Users\akshay\AppData\Local\Programs\Python\Python36
Ashwarya sharma
la source
0

J'ai installé 2 et 3 et j'ai eu le même problème pour trouver 3. Heureusement, en tapant chemin sur le chemin Windows m'a permis de trouver où je l'avais installé. Le chemin était une option lorsque j'ai installé Python que j'ai juste oublié. Si vous n'avez pas sélectionné la définition du chemin lorsque vous avez installé Python 3, cela ne fonctionnera probablement pas - à moins que vous n'ayez mis à jour manuellement le chemin lorsque vous l'avez installé. Dans mon cas, c'était à c: \ Program Files \ Python37 \ python.exe

Douglas Gilliland
la source
0

Si vous utilisez anaconda navigatorsur windows, vous pouvez aussi y aller enviornmentset faire défiler les environnements, l' rootenvironnement vous indiquera où il est installé. Cela peut aider si vous souhaitez utiliser cet environnement lorsque vous devez le connecter à d'autres applications, dans lesquelles vous souhaitez intégrer du code Python.

PV8
la source