web-dev-qa-db-fra.com

Erreur "Python version 2.7 requise, introuvable dans le registre" lors de la tentative d'installation de netCDF4 sur Windows 8

J'utilise Anaconda 1.7, 32 bits. J'ai téléchargé la version correcte du programme d'installation netCDF4 à partir de ici .

J'ai tenté de copier le dossier HKEY_LOCAL_MACHINE\SOFTWARE\Python dans HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node. Pas de chance.

Quelqu'un at-il une idée de la raison pour laquelle cela pourrait se produire? Anaconda installé à l'emplacement par défaut, C: /.

Oui, je sais qu'Anaconda a netCDF4 dans la liste des paquets, mais si vous regardez bien, il n'est proposé que sur Mac et Linux.

39
bogdan

Il suffit de télécharger Python 2.7.6 Windows Installer depuis l’officiel Python) , puis de lancer le package d’installation.

2
pepr

Cette erreur peut se produire si vous installez un paquet avec un bitness différent de votre version Python. Pour savoir si votre installation Python est 32 ou 64 bits) , voir ici .

Certains superpacks (par exemple, pour Scipy) disponibles sur SourceForge ou python.org concernent les systèmes 32 bits et d'autres, les systèmes 64 bits. Voir cette réponse . Sous Windows, la désinstallation de la version 32 bits et l'installation de la version 64 bits (ou inversement si votre installation est en 32 bits) peuvent résoudre le problème.

94
1''

J'avais le même problème lorsque j'utilisais un fichier .exe pour installer un paquet Python (parce que j'utilise Anaconda et qu'il n'a pas été ajouté Python au registre). J'ai résolu le problème en exécutant ce script:

#
# script to register Python 2.0 or later for use with 
# Python extensions that require Python registry settings
#
# written by Joakim Loew for Secret Labs AB / PythonWare
#
# source:
# http://www.pythonware.com/products/works/articles/regpy20.htm
#
# modified by Valentine Gogichashvili as described in http://www.mail-archive.com/[email protected]/msg10512.html

import sys

from _winreg import *

# Tweak as necessary
version = sys.version[:3]
installpath = sys.prefix

regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)
installkey = "InstallPath"
pythonkey = "PythonPath"
pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (
    installpath, installpath, installpath
)

def RegisterPy():
    try:
        reg = OpenKey(HKEY_CURRENT_USER, regpath)
    except EnvironmentError as e:
        try:
            reg = CreateKey(HKEY_CURRENT_USER, regpath)
            SetValue(reg, installkey, REG_SZ, installpath)
            SetValue(reg, pythonkey, REG_SZ, pythonpath)
            CloseKey(reg)
        except:
            print "*** Unable to register!"
            return
        print "--- Python", version, "is now registered!"
        return
    if (QueryValue(reg, installkey) == installpath and
        QueryValue(reg, pythonkey) == pythonpath):
        CloseKey(reg)
        print "=== Python", version, "is already registered!"
        return
    CloseKey(reg)
    print "*** Unable to register!"
    print "*** You probably have another Python installation!"

if __== "__main__":
    RegisterPy()
53
duhaime
6
Javi Pedrera

Je pense que cela dépend vraiment de la raison pour laquelle cette erreur est donnée. C'est peut-être le problème de bitness, mais cela peut aussi être dû à n bogue de désinstallation qui laisse les entrées de registre derrière.

Je viens d'avoir ce cas parce que j'ai besoin de deux versions de Python sur mon système. Lorsque j'ai essayé d'installer SCons (avec Python2), le programme d'installation .msi a échoué, indiquant qu'il n'avait trouvé que Python3 dans le registre. Donc, je l’ai désinstallé, avec pour résultat qu’aucun Python n’a été trouvé. Pas frustrant! (Solution de contournement: installer SCons avec pip install --Egg --upgrade scons)

En tout cas, je suis sûr qu'il y a des discussions sur ce phénomène. Je pensais simplement que cela irait ici, car c’était l’un de mes meilleurs résultats de recherche.

3
Sir Jane

J'ai eu un tel problème. La solution était simple:

  1. Installez python 2.7 version 64 bits.
  2. Exportez HKEY_LOCAL_MACHINE\SOFTWARE\Python.
  3. Supprimer Python 2.7.
  4. insérer le fichier reg exporté.
  5. renommez tous les C:\Python27 en C:\Anaconda (insérez votre chemin).

P.S. Désolé pour la mauvaise grammaire.

1
user