Python version 3.3 required, which was not found in the registry
Python version 3.3 required, which was not found in the registry
python registry函数语法
在windows下安装numpy的时候, 出现了"Python version 3.3 required, which was not found in the registry"的错误.
类似的有:Python version 2.7 required, which was not found in the registry
大致意思是说:注册表没有对应的信息. 只要执行一个python脚本,将HKEY_CURRENT_USER (HKCU)注册就好.
2.7版本的可以参照: http://blog.csdn.net/zklth/article/details/8117207
3.3版本的可以参照: https://gist.github.com/embray/6042780#file-win_register_python-py
相关的说明:
http://pythonhosted.org/pyfits/appendix/faq.html#on-windows-vista-or-later-why-can-t-the-installer-find-python-in-the-registry
其中python3版本的可以执行以下脚本:
from __future__ import print_function
import sys
try:
from winreg import *
except ImportError:
from _winreg import *
# tweak as necessary
version = sys.version[:3]
installpath = sys.prefix
regpath = "SOFTWARE\\Python\\Pythoncore\\{0}\\".format(version)
installkey = "InstallPath"
pythonkey = "PythonPath"
pythonpath = "{0};{1}\\Lib\\;{2}\\DLLs\\".format(
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 __name__ == "__main__":
RegisterPy()
@南非波波
github:https://github.com/swht

浙公网安备 33010602011771号