本文介绍了导入安装在conda环境中的软件包时ModuleNotFoundError的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

无法从内部版本(Conda列表输出的第3列)导入缺少Python版本/子版本的flask迁移依赖项。

Flask-Migrate是从Conda-Forge安装的,使用:

conda install -c conda-forge flask-migrate

同时安装了几个依赖项,这些依赖项位于conda list -n venv中,但无法导入到python。

(venv) C:UsersColinDocumentsProjectsmicroblog>python
Python 3.6.8 |Anaconda, Inc.| (default, Feb 21 2019, 18:30:04) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import alembic
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'alembic'

根据我所发现的,在导入时引发ModuleNotFoundErrors的包都缺少Conda列表第3列中的python版本。

导入成功:py36_0或py36_1000或py36*等

ModuleNotFoundError:py_0或py_1

为什么安装的包在导入到python时会升高ModuleNotFoundError

推荐答案

我相信py_0环境下的包都是作为Conda的NoArch包安装的。我不确定为什么我的系统无法导入Noarch包,但我可以通过手动下载win64-py36_0.tar.bz2文件并使用以下命令在本地安装它们来解决此问题:

conda install /package-path/package-filename.tar.bz2

这篇关于导入安装在conda环境中的软件包时ModuleNotFoundError的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-19 18:59