Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
&引用;需要Python版本2.7,但在注册表中找不到该版本;尝试在Windows 8上安装netCDF4时出错_Python_Windows_Python 2.7_Installation_Package - Fatal编程技术网

&引用;需要Python版本2.7,但在注册表中找不到该版本;尝试在Windows 8上安装netCDF4时出错

&引用;需要Python版本2.7,但在注册表中找不到该版本;尝试在Windows 8上安装netCDF4时出错,python,windows,python-2.7,installation,package,Python,Windows,Python 2.7,Installation,Package,我使用Anaconda 1.7,32位。我从下载了netCDF4安装程序的正确版本 我试图将HKEY_LOCAL_MACHINE\SOFTWARE\Python文件夹复制到HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432节点。不走运 有人知道为什么会这样吗?Anaconda安装在默认位置,C:/ 是的,我知道Anaconda在软件包列表中有netCDF4,但如果仔细看,它只为Mac和Linux提供。尝试以下步骤: 只需从下载并启动安装包。我遇到了这样的问题。解决方案很简单:

我使用Anaconda 1.7,32位。我从下载了netCDF4安装程序的正确版本

我试图将HKEY_LOCAL_MACHINE\SOFTWARE\Python文件夹复制到HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432节点。不走运

有人知道为什么会这样吗?Anaconda安装在默认位置,C:/


是的,我知道Anaconda在软件包列表中有netCDF4,但如果仔细看,它只为Mac和Linux提供。

尝试以下步骤:

只需从下载并启动安装包。

我遇到了这样的问题。解决方案很简单:

  • 安装Python2.7 64位版本
  • 导出HKEY\U LOCAL\U MACHINE\SOFTWARE\Python
  • 删除Python2.7
  • 插入导出的注册表文件
  • 将所有C:\Python27重命名为C:\Anaconda(插入路径)
    另外,很抱歉,语法不正确。

    如果您安装的包的比特数与Python版本不同,则可能会发生此错误。要查看Python安装是32位还是64位,请参阅


    SourceForge或python.org上提供的一些Superpack(例如用于Scipy)用于32位系统,有些用于64位系统。看见在Windows中,卸载32位版本并安装64位版本(如果您的安装是32位版本,则反之亦然)可以解决此问题。

    我在使用.exe安装Python软件包时遇到了相同的问题(因为我使用Anaconda,它没有将Python添加到注册表)。我通过运行以下脚本修复了该问题:

    #
    # 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/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()
    

    我认为这真的取决于为什么会出现这种错误。这可能是位的问题,但也可能是因为它留下了注册表项

    我之所以有这个案例,是因为我的系统上需要两个版本的Python。当我尝试安装SCON(使用Python2)时,.msi安装程序失败,说它只在注册表中找到Python3。所以我卸载了它,结果根本没有找到Python。令人沮丧的!(解决方法:使用
    pip安装--egg--升级scon安装scon


    不管怎样,我相信这一现象是有线索的。我只是觉得它适合这里,因为这是我最热门的搜索结果之一

    检查您试图安装的32/64位。python解释器和您尝试使用python的应用程序可能是不同的

    谢谢,我有Python2.6.5(x64),而PSUTIL for 2.6仅在x86中可用。我只是不得不将Python版本切换到x86,这没有太大帮助。同样的错误仍然可能发生,例如,如果您想安装两个版本的Python,那么Windows安装程序同样会失败。我想最好看看原因是什么。@SirJane:我不能证实。我通常至少有最后一个Python2和最后一个Python3并排出现。除了Python2.7和3.5之外,我经常使用带有不同Subversion的Python2.x或Python3.x来尝试某些包的某些功能或解决其他包的问题。在同时安装所有版本之后,我从来没有遇到过像Python for Windows官方发行版那样的问题。@SirJane:我同意可能是32位与64位的差异。该链接指向32位版本的Python,该版本应该可以正常工作。但是,当您在2.x之前安装3.x时,也可能会出现此错误,然后安装程序无法解决此问题,请参见下面我的小回答。在我的例子中,我试图在win32 python上安装amd64包,您的评论让我大开眼界。对于python 3,您将被命名为“Oracle”,只需在
    print
    调用周围添加括号,并将
    import\u winreg
    替换为
    import winreg
    ,它可以完美地运行于k@duahime,但注册表上的自动(编程)操作根本不安全。这就是为什么人们总是建议手动解决方案。所以,你能不能也写下如何手动完成所有这些,只用2-3行(通常只需要这么多)?上帝保佑你。谢谢