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