【问题标题】:ImportError: No module named sixImportError:没有模块名为六
【发布时间】:2012-12-07 16:38:11
【问题描述】:

我正在尝试构建 OpenERP 项目,完成依赖项。它现在给出这个错误

Traceback (most recent call last):
  File "openerp-client.py", line 105, in <module>
  File "modules\__init__.pyo", line 23, in <module>
  File "modules\gui\__init__.pyo", line 22, in <module>
  File "modules\gui\main.pyo", line 33, in <module>
  File "rpc.pyo", line 29, in <module>
  File "common\__init__.pyo", line 22, in <module>
  File "common\common.pyo", line 26, in <module>
  File "tools\__init__.pyo", line 28, in <module>
  File "dateutil\relativedelta.pyo", line 12, in <module>
ImportError: No module named six

有人能指导一下出了什么问题以及如何解决吗???

【问题讨论】:

标签: python module importerror


【解决方案1】:

您可能没有安装six Python 模块。你可以在pypi找到它。

要安装它:

$ easy_install six

(如果您安装了pip,请改用pip install six

【讨论】:

  • 对不起,这是一个非常缺乏的答案。为什么这么多 pip 模块没有安装它们的依赖项?
  • 我不知道为什么某些 python 模块错误地列出了它们的依赖项。也许作者没有测试在 chroot 中安装模块来验证依赖关系是否正确。
  • 我需要它在我的 Pipfile 中用于 Web 应用程序。我用pipenv install six
  • @StevenWade 对我来说,我发现pip install git+... 是罪魁祸首;没有遵循任何部门。安装 pypi 版本,卸载,然后安装 git+ 版本,引入必要的依赖项,虽然这看起来很傻。
  • 在 Ubuntu for Python 2.7 上,我使用 sudo apt install python-six 安装了它。谢谢!
【解决方案2】:

如果 pip “说” 6 已安装,但您仍然得到:

ImportError: No module named six.moves

尝试重新安装六个(对我有用):

pip uninstall six
pip install six

【讨论】:

  • 如您所说,我可以在重新安装六个后解决此问题。谢谢!
  • 对我来说也是...我已经安装了软件包,但是 software-properties-gtk 失败了。最终,我将其追溯到六个导入错误。安装了 python3-six 包,但未加载该模块。我用apt重新安装了模块,问题解决了。
  • 非常有帮助。谢谢。
【解决方案3】:

在 Ubuntu 和 Debian 上

apt-get install python-six

成功了。

如果您收到“权限被拒绝”的错误消息,请使用 sudo apt-get install python-six

【讨论】:

  • 为什么debian没有正确安装依赖?
  • 使用apt-get install python3-six 我得到“最新版本”,但使用ipython 我得到ModuleNotFoundError: No module named 'six'。在/usr/lib/python3/dist-packages/ 中,six 不存在。
【解决方案4】:

对于 Mac OS X:

pip install --ignore-installed six

【讨论】:

    【解决方案5】:
    pip install --ignore-installed six
    

    来源:1233 点赞this comment

    【讨论】:

      【解决方案6】:

      在 Ubuntu Bionic (18.04) 上,已经为 python2 和 python3 安装了六个,但我在启动 Wammu 时出错。 @3ygun 解决方案帮我解决了

      ImportError: No module named six
      

      启动 Wammu 时

      如果发生在python3程序中,6个自带

      pip3 install six
      

      如果你没有 pip3:

      apt install python3-pip
      

      在 Ubuntu 下使用 sudo

      【讨论】:

        【解决方案7】:

        我执行了以下操作来解决上述问题。我在尝试运行构建的 exe 时遇到了上述问题,即使我使用 pyinstaller 成功构建了 exe。我是在 Windows 10 上完成的。

        1. 转至https://pypi.org/project/six/#files
        2. 下载“six-1.14.0.tar.gz (33.9 kB)”
        3. 解压缩,将“six.py”复制并粘贴到您的源目录中。
        4. 将“六”模块导入您的源代码(导入六)
        5. 运行源脚本。

        【讨论】:

          【解决方案8】:

          在我的情况下,为 python 2.7 和 3.7 安装了六个,pip install sixpip3 install six 都报告它已经安装,而我仍然有应用程序(特别是 apt 程序本身)抱怨缺少六个.

          解决方案是专门为python3.6安装它:

          /usr/bin/python3.6 -m pip install six
          

          【讨论】:

            【解决方案9】:

            对我来说,问题不是six,而是rst2pdf 本身。 head -1 $(which rst2pdf) (3.8) 与 python3 --version (3.9) 不匹配。我的解决方案:

            pip3 install rst2pdf
            

            【讨论】:

              【解决方案10】:

              Ubuntu 18.04.5 LTS(仿生海狸):

              apt --reinstall install python3-debian
              apt --reinstall install python3-six
              

              如果 /usr/bin/chardet3 失败并出现错误“ModuleNotFoundError: No module named 'pkg_resources'”:

              apt --reinstall install python3-pkg-resources
              

              【讨论】:

                【解决方案11】:

                six 是一个 Python 模块。 python 命令可以参考 Python2。

                您可能混淆了 Python2 和 Python3,或者您混淆了此模块适用的 Python 版本号。 Python2 的 six 与 Python3 的 six 不同。

                如果通过 pip 安装 six 仍然无法正常工作,请考虑改为运行 Python3。

                【讨论】: