由于后面描述的一系列事件,每当我尝试使用 pip 执行任何操作时,我都会在命令提示符中收到以下错误。
(venv) (base) C:\Users\Mark Kortink\Dropbox\Python\projects\metapplica>pip install flask
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\ProgramData\Anaconda3\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Users\MARKKO~1\Dropbox\Python\projects\METAPP~1\venv\Scripts\pip.exe\__main__.py", line 9, in <module>
File "c:\users\markko~1\dropbox\python\projects\metapp~1\venv\lib\site-packages\pip\_internal\main.py", line 45, in main
command = create_command(cmd_name, isolated=("--isolated" in cmd_args))
File "c:\users\markko~1\dropbox\python\projects\metapp~1\venv\lib\site-packages\pip\_internal\commands\__init__.py", line 96, in create_command
module = importlib.import_module(module_path)
File "C:\ProgramData\Anaconda3\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "c:\users\markko~1\dropbox\python\projects\metapp~1\venv\lib\site-packages\pip\_internal\commands\install.py", line 23, in <module>
from pip._internal.cli.req_command import RequirementCommand
File "c:\users\markko~1\dropbox\python\projects\metapp~1\venv\lib\site-packages\pip\_internal\cli\req_command.py", line 17, in <module>
from pip._internal.index import PackageFinder
ImportError: cannot import name 'PackageFinder' from 'pip._internal.index' (c:\users\markko~1\dropbox\python\projects\metapp~1\venv\lib\site-packages\pip\_internal\index\__init__.py)
所有情况都在我的其他问题中描述,但没有得到有用的答案。在这里ModuleNotFoundError 。
简而言之:-
- 我在 Flask 中有一个工作应用程序,在 Anaconda 环境中运行 使用 pip (不是 conda)安装的所有内容,它使用 flask Bootstrap 。
- 我卸载了flask-bootstrap并安装了不同的软件包 Bootsrap-flask 获取 bootstrap-4,成功了。
- 我卸载了 Bootstrap-flask,因为我决定采用纯 CSS。
- 我仍然可以从 Anaconda 环境的 venv 中运行我的应用程序 使用“ flask 运行”。
- 但是一旦我尝试在调试器中运行任何与 Flask 相关的内容 (Spyder 或 VSCode)我发现找不到核心 Flask 库。
- 一旦我使用 pip 执行任何操作,就会收到上述错误。
我认为上面的所有细节都会分散注意力,为了完整性我将其包含在内,并且在我的其他链接问题中进行了介绍。我相信从上面的命令提示符读数中应该可以清楚地看出根本原因。特别是ImportError:无法从“pip._internal.index”导入名称“PackageFinder”
任何人都可以提出任何建议吗?如果不是,我如何安全、干净地删除我的 Flask venv 环境并重新安装它而不丢失任何内容。
谢谢
最佳答案
这应该作为您问题的提示和答案。 我广泛使用 Flask,环境中的简单困惑可能会搞乱您的整个项目,并最终在您尝试在线修复时耗尽您的所有时间。如果您遇到环境问题,请始终重新创建您的项目。我建议您使用 Pycharm IDE,因为 Anaconda 环境有时会很困惑。 请按照以下步骤解决您的问题
修复 1
- 打开 anaconda 提示符并运行此命令
python -m pip --version
- 确认 Pip 版本及其位置后运行升级
python -m pip install --upgrade pip
- 为了确保一切正常运行
conda 更新 pip
修复 2 您的包裹似乎有问题
- 在工作目录中创建一个requirements.txt文件
- 通过在 Python 终端上使用以下代码,自动将所有必需的包传递到 requirements.txt
pip freeze >requirements.txt
- 运行以下命令来安装您可能丢失或损坏的软件包
pip install -r requests.txt
祝一切顺利
关于python pip 损坏,无法修复或卸载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60748529/