在安装MySQL-python-1.2.3.win-amd64-py2.7.exe时,提示:Python version 2.7 required,which was not found in the registry
这是在注册表不能识别python2.7,原因windows是64位,安装的python是32位。怎么查看自己安装的python是多少位的呢?因为32位、64位都可以在64位操作系统中安装,所以年代久远的时候,就不记得当时自己安装的python是32呢,还是64了。查看非常之简单。输入平时我们检查是否有python环境的命令即可:
C:UsersAdministrator>python
MySQLdb for python(32/64位)下载地址:http://www.codegood.com/archives/129
解决方法:
1.新建一个register.py文件,将如下代码copy进去:
# # script to register Python 2.0 or later for use with win32all # and other 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/distutils-sig@python.org/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 __name__ == "__main__": RegisterPy()
2.定位到该文件所在目录运行python register.py
说明python2.7已经注册成功。
3.再执行MySQLdb安装程序,则会自动识别,并安装成功了。