【问题标题】:importError: no module named _winreg python3importError:没有名为 _winreg python3 的模块
【发布时间】:2011-05-18 06:31:29
【问题描述】:

如果可以的话,我在哪里可以下载 python3 的 _winreg。我在 E:\Windows 上有我的“windir”。我不知道 cx_Freeze 是否没有注意到这一点。我正在使用 cx_Freeze 创建一个 msi 安装程序。

【问题讨论】:

    标签: python cx-freeze winreg


    【解决方案1】:

    正如_winreg documentation 中所说,它在 Python 3.0 中已重命名为 winreg。如果要转换为 Python 2.x 编写的代码,则应运行 2to3 工具。

    【讨论】:

    • 谢谢,我进入了有问题的代码并将 _winreg 重命名为 winreg。
    【解决方案2】:

    我知道这是一个老问题,但这是在谷歌上搜索 ModuleNotFoundError: No module named '_winreg' 时的第一个搜索结果,也许对某人有帮助。

    我在尝试使用虚拟环境文件夹时遇到了同样的错误,该文件夹是使用不同的(已删除的)python 二进制文件创建的。解决方案是重新创建虚拟环境:

    1. 删除虚拟环境文件夹
    2. 运行python -m venv <name_of_virtual_environment>

    【讨论】:

    • 谢谢 - 我也从 Google 找到了这个,还有其他几个线程建议运行 2to3 或类似的东西,但是当问题开始时我的项目已经在使用 Python 3!这很简单并且解决了问题。谢谢!
    • 似乎可以通过运行python -m venv ORIGINAL/PATH 覆盖虚拟环境,这会用较新的文件破坏venv 中的文件,因此您至少可以在擦除文件夹之前运行pip freeze。然后我会按照上面的步骤。
    【解决方案3】:

    我为此找到了一个简单的解决方案,尽管我在经过大量 Rnd 之后找到了它,但解决方案的实现是如此简单和直接。希望它可以帮助很多有同样问题的人。

    如果您的机器上没有安装最新版本的 Python,您需要从 (https://www.python.org/downloads/) 下载它,然后单击添加到路径选项并完成安装程序。

    请打开CMD并移动到python最新版本目录,然后运行pip install 包名(e.g) pip install pygame即可成功

    1. C:\WINDOWS\system32>cd C:\Users\admin\AppData\Local\Programs\Python\Python37-32
    
        2. C:\Users\admin\AppData\Local\Programs\Python\Python37-32>pip install Pygame 
    

    它将立即安装软件包,没有任何问题。

    正在下载 成功安装 Pygame-1.9.4

    C:\Users\admin\AppData\Local\Programs\Python\Python37-32>

    如果您在尝试上述解决方案后仍然遇到 Pycharm 问题,请也尝试以下步骤。

    1. 从设置菜单中创建新的虚拟环境并选择最新版本的python框架作为项目解释器并给出一个新的文件夹路径。

    2. 选择要导入的 pip 包。重新编译代码,错误就会清除。

    希望这会有所帮助。

    【讨论】:

      【解决方案4】:

      当您遇到类似simpleai 未找到模块的错误时, 使用

      pip install simpleai
      

      在提示符下然后执行。它将被安装。

      【讨论】:

        最近更新 更多