点列表显示已安装的模块,但仍出现导入错误

时间:2019-07-03 00:52:02

标签: python pip virtualenv

我正在使用python flask的请求模块。我已经使用:

安装了请求模块

pip install requests

并在运行时验证请求模块是否存在:

pip list

但是当我运行python应用程序时,收到请求模块的导入错误。

我注意到pip正在C:\Users\xx\Documents\Projects\Python\Python3REST\lib\site-packages\文件夹中安装模块,但是解释程序正在C:\Users\xx\Documents\Projects\Python\Python3REST\lib\site-packages\flask\文件夹中寻找模块。

我尝试运行命令:

pip install --install-option="Path to install in" requests

但是抛出了其他错误。

我正在获取导入错误:

ImportError: cannot import name 'requests' from 'flask' (C:\Users\xx\Documents\Projects\Python\Python3REST\lib\site-packages\flask\__init__.py)

我正在Windows 10的virtualenv中工作。

感谢您能提供的任何帮助。

谢谢

2 个答案:

答案 0 :(得分:2)

我最近在安装自制程序包时遇到了同样的问题。我用pip install <package>安装了它,并检查它是否实际上是用pip list安装的,但是用import <package>运行脚本返回了ModuleNotFoundError: No module named <package>

我解决了在软件包目录中创建一个名为__init__.py的空文件的问题。

检查https://pythontips.com/2013/07/28/what-is-init-py/https://docs.python.org/3/tutorial/modules.html#packages以便更好地理解。

答案 1 :(得分:1)

如果将该文件夹添加到路径中该怎么办?使用sys.path.extend吗?