ModuleNotFoundError:在 pip install pyserial 之后没有名为“serial”的模块

Posted

技术标签:

【中文标题】ModuleNotFoundError:在 pip install pyserial 之后没有名为“serial”的模块【英文标题】:ModuleNotFoundError: No module named 'serial' after pip install pyserial 【发布时间】:2019-06-09 16:08:10 【问题描述】:

尝试从命令提示符运行 .py 文件时出现错误,

文件“C:\Users\mayna\Anaconda3\lib\site-packages\lucidIo\Com.py”,第 7 行,在 导入序列号 ModuleNotFoundError:没有名为“串行”的模块

即使在我使用

安装了 pyserial 模块之后也是如此

pip install pyserial

以下行,pip list modules 表明,当我尝试在命令提示符中导入串行时,由于某种原因实际上已安装 pyserial 3.4,它给了我找不到模块的错误。真正让我失望的是,当我直接打开一个 python 窗口并尝试访问串行时,我得到了这个,

>>> import serial     
>>> serial  
<module 'serial' from 'C:\\Users\\mayna\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\site-packages\\serial\\__init__.py'>   

我不知道从哪里开始,我是 python 新手,但从我已经研究过的内容来看,我不应该再收到这个错误了。我在 Windows 10 电脑上运行 python 3.7。

任何帮助将不胜感激。谢谢你。

【问题讨论】:

我猜你安装了 2 个不同版本的 python @JoranBeasley 在设置中查看我的应用和功能选项卡显示我有 Python 3.7.2(32 位)和 Python 3.7.1(Anaconda3 2018.12 64 位)。如果我要卸载 3.7.1 版本,Anaconda 会被卸载吗? @AmitAmola 好的,那么修复会像卸载 anaconda 一样简单吗? 这行得通吗? @AmitAmola 我现在正在处理它,使用 conda install 时出现错误。它给了我 condahttperror: Http connection failed 。我正在努力解决这个问题,如果你的解决方案有效,我会告诉你。 【参考方案1】:

(删除 cmets 并将其添加为答案)

既然你已经安装了 anaconda,试试这个:

conda install pyserial
or
conda install -c conda-forge pyserial

此问题的主要原因是,您的 pip 将此模块安装在单独的位置或安装到您机器中的 python 的其他版本。你正在运行 Python,可能在 Jupyter 或其他通过 Anaconda 运行的 IDE 上。因此,使用上面的 conda install,会将所有依赖项安装在所需的 continuum 文件夹中,conda IDE 将从该文件夹中获取模块。不,你不需要卸载任何东西,只需在 cmd 中运行上述命令即可。

【讨论】:

以上是关于ModuleNotFoundError:在 pip install pyserial 之后没有名为“serial”的模块的主要内容,如果未能解决你的问题,请参考以下文章

ModuleNotFoundError:没有名为“键盘”的模块,尝试过 pip3 安装,尝试过 -pip list 它在那里

pip崩了, 解决 ModuleNotFoundError: No module named 'pip'.

pip install上的ModuleNotFoundError

解决ModuleNotFoundError: No module named ‘pip‘问题

pip3 出现错误:ModuleNotFoundError: No module named 'pip._vendor.packaging.__about__'

ModuleNotFoundError:在 pip install pyserial 之后没有名为“serial”的模块