【问题标题】:ModuleNotFoundError: No module named 'dateutil' but Requirement already satisfiedModuleNotFoundError:没有名为“dateutil”的模块,但已满足要求
【发布时间】:2021-06-30 17:06:15
【问题描述】:

当我运行我的程序时,我得到了这个错误:

ModuleNotFoundError: No module named 'dateutil'

当我尝试使用 pip3 安装 dateutil 时,我收到以下消息:

Requirement already satisfied: python-dateutil in /usr/local/lib/python3.8/site-packages (2.8.1)
Requirement already satisfied: six>=1.5 in /Users/tommcginty/Library/Python/3.8/lib/python/site-packages (from python-dateutil) (1.14.0)

我已尝试卸载/重新安装 dateutil,但始终收到相同的消息。 我的代码只有这些导入语句:

import sqlite3
import urllib.error
import re
from urllib.parse import urljoin
from urllib.parse import urlparse
from urllib.request import urlopen
from bs4 import BeautifulSoup
from dateutil import parser

pip3 列表显示:

Package           Version
----------------- -------
astroid           2.3.3
isort             4.3.21
lazy-object-proxy 1.4.3
mccabe            0.6.1
pip               21.0.1
pylint            2.4.4
python-dateutil   2.8.1
setuptools        49.2.0
six               1.14.0
wheel             0.34.2
wrapt             1.11.2

我正在使用 MacOS Big Sur。 不确定它是否有区别,但我使用的是 M1 MacBook Air。 谢谢

【问题讨论】:

  • 您能看到which pip3which python 的结果并比较它们的文件夹吗?
  • 我得到 /usr/local/bin/pip3 对应哪个 pip3 和 /usr/local/bin/python3 对应哪个 python3。
  • 你能粘贴你用来运行程序的确切命令和你得到的输出
  • 注意:pip3 list 不显示beautifulsoup,因此您的bs4 导入实际上应该是您所显示的失败,因此您没有使用正确的Python 解释器。您需要使用python3 your_script.pypython3 -m pip list 开始调试

标签: python


【解决方案1】:

我将 python 更新到 3.9 并修复了它。

【讨论】:

    【解决方案2】:

    遇到同样的问题,发现

    点子列表

    pip3 列表

    返回不同的已安装模块

    要解决这个问题:我检查并安装了 pip3 中缺少的模块

    pip3 安装 MODULE_NAME

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-07-02
      • 2020-08-13
      • 2022-11-20
      • 1970-01-01
      • 2021-05-31
      • 2019-02-08
      • 2022-06-17
      • 1970-01-01
      相关资源
      最近更新 更多