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é?


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'

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


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

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

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.)


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))

@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é ...


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


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 .


4

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


(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");
}

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)


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.


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!


1

C'est généralement

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

ou essayez d'utiliser (en cmd)

où python


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

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


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.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.