问题描述
在虚拟环境中安装模块时遇到问题。当我安装一个模块(例如,一个模块请求),然后尝试键入pip list
时,有几个模块在出现之前从未安装过。
这是我第一次做这件事:
Package Version
---------- -------
pip 20.2.3
setuptools 41.2.0
这是我要安装的第一个模块,即请求:
Package Version
---------- ---------
certifi 2020.6.20
chardet 3.0.4
idna 2.10
pip 20.2.3
requests 2.24.0
setuptools 41.2.0
urllib3 1.25.10
我想为我的应用程序创建requirements.txt,但是当我安装所需的每个模块时,会出现更多不需要的模块。
我看到了有关虚拟环境的教程,但没有发现它们遇到这种情况。
我该如何解决问题?
解决方法
- 确保首先使用 引用正确的python或pip版本
python3 pip3
-
尝试通过pip卸载来卸载现有模块
-
尝试Anaconda
这些模块依赖于String query =
"SELECT e." + ID_EMP + ",e." + FIRST_NAME + ",e." + LAST_NAME + "," +
"COUNT(m." + ID_MISTAKE + ") AS Mistake_Count " +
"FROM " + EMP_TABLE + "AS e LEFT JOIN " + MISTAKE_TABLE + " AS m " +
"ON m." + m.ID_WAITER_MISTAKE + " = e." + ID_EMP + " " +
"GROUP BY e." + ID_EMP + ",e." + LAST_NAME + " " +
"ORDER BY Mistake_Count DESC,e." + ID_EMP ;
模块。
如果要使用此requests
模块,则必须具有那些依赖项。否则,您将获得异常requests
:没有名为“ ModuleNotFoundError
”的模块。
安装软件包时,pip
也会自动安装该软件包的所有依赖项。
在您的情况下,requests
取决于certifi
,chardet
,idna
和urllib3
,因此它们也都已安装。您无需在requirements.txt
中列出这些软件包。
如果要可视化pip
软件包的依赖性,请查看pipdeptree。
奖励:存在诸如poetry之类的依赖项管理器,它们可以跟踪您对项目的要求。如果您以后不想手动维护需求文件,则可能要看看它。