【问题标题】:No module named 'openpyxl' - Python 3.4 - Ubuntu没有名为“openpyxl”的模块 - Python 3.4 - Ubuntu
【发布时间】:2015-12-29 10:33:44
【问题描述】:

我安装了openpyxl

$ pip install openpyxl

当我尝试命令时

from openpyxl import Workbook

我明白了

Traceback (most recent call last):
 File "<pyshell#0>", line 1, in <module>
from openpyxl import Workbook
ImportError: No module named 'openpyxl'

我正在使用 Python 3.4 和 Ubuntu 14.04,32 位操作系统类型

【问题讨论】:

  • 你为python2安装它,使用pip3 install openpyxl
  • 在 ubuntu 中安装了 python 2.x 和 3.x。默认关键字python 指的是python 2.x。要使用 python 3,您需要使用@zetysz 所述的python3pip3
  • @Kenly 非常感谢您的评论。我的问题解决了。

标签: python ubuntu python-3.4 openpyxl


【解决方案1】:

如果你不使用 conda,只需使用:

pip install openpyxl

如果你使用 conda,我会推荐:

conda install -c anaconda openpyxl

而不是简单的conda install openpyxl

因为 conda 更新现在存在问题(请参阅 GitHub Issue #8842);这个问题正在修复,它应该在下一个版本(conda 4.7.6)之后再次工作

【讨论】:

    【解决方案2】:

    @zetysz 和@Manish 已经解决了这个问题。我只是将其放在答案中以供将来参考:

    • pip 将 Python 2 称为 Ubuntu 中的 default,这意味着 pip install x 将安装该模块对于 Python 2不适用于 3

    • pip3 指的是 Python 3,它会为 Python 3

    • 安装模块>

    【讨论】:

    • 请注意,较新版本的 Ubuntu 可能默认使用 Python 3
    【解决方案3】:

    为了跟踪依赖问题,我喜欢使用conda installer,简单归结为:

    conda install openpyxl
    

    【讨论】:

      【解决方案4】:

      我用 pip install 代替了同样的问题:

      sudo apt-get install python-openpyxl
      sudo apt-get install python3-openpyxl
      

      sudo 命令也适用于其他软件包。

      【讨论】:

        【解决方案5】:

        这对我有用:

        pip uninstall openpyxl
        pip install openpyxl 
        

        或者你也可以试试

        pip3 uninstall openpyxl
        pip3 install openpyxl 
        

        如果您使用的是google-colabjupyter-notebooketc 等笔记本,您可以试试这个:

        !pip uninstall openpyxl
        !pip install openpyxl 
        

        或使用pip3

        !pip3 uninstall openpyxl
        !pip3 install openpyxl 
        

        如果您正在使用笔记本,则可能需要重新启动笔记本。

        【讨论】:

          【解决方案6】:

          如果您使用的是 Python3,请安装:

          python3 -m pip install --user xlsxwriter
          

          这将使用适当版本的 Python3 运行 pip。如果你运行裸 pip3 并安装了多个版本的 Python,它仍然会失败,从而导致更多的混乱。

          --user 标志将允许以普通用户身份安装,无需 root。

          【讨论】:

          • 它与 python 3 更兼容还是只是您的偏好?我遇到了一个 openpyxl 错误,在 Windows 上运行良好,但在 Ubuntu 服务器上却不行......
          • 就像我上面说的,它比使用 pip 或 pip3 更精确;它同样适用于所有平台。你的问题的性质是什么?当您运行上述命令时,您看到了什么?当您尝试使用此库时遇到什么错误?
          【解决方案7】:

          您必须使用 python 包管理器显式安装它

          1. pip install openpyxl for Python 2
          2. pip3 为 Python 3 安装 openpyxl

          【讨论】:

          【解决方案8】:

          通过 conda 和 pip 成功安装后,我仍然无法导入“openpyxl”。我发现它安装在 '/usr/lib/python3/dist-packages' 中,所以这个 https://stackoverflow.com/a/59861933/10794682 对我有用:

          import sys 
          sys.path.append('/usr/lib/python3/dist-packages')
          

          希望这对其他人有用。

          【讨论】:

          • 我在 Python 3.8 venv 中找到的其他解决方案都没有为我工作,我使用了以下内容:import sys sys.path.append('./env/lib/python3.8/site-packages')
          【解决方案9】:

          如果你想从 Excel 中导出或读取,这对我来说适用于 Windows

          pip install openpyxl
          pip install --user xlsxwriter
          pip install xlrd==1.2.0
          

          【讨论】:

            【解决方案10】:

            对我有用的,包括上述许多解决方案,是使用 venv,在新的虚拟环境中 pip 安装所有要求并运行程序。

            【讨论】:

            猜你喜欢
            • 2022-04-12
            • 1970-01-01
            • 1970-01-01
            • 2017-12-30
            • 1970-01-01
            • 1970-01-01
            • 2015-05-13
            • 2021-04-09
            • 2013-03-24
            相关资源
            最近更新 更多