![pip 保留旧路径](https://linux22.com/image/202563/pip%20%E4%BF%9D%E7%95%99%E6%97%A7%E8%B7%AF%E5%BE%84.png)
我无法找到满足我需求的问题/答案,但如果这是一个重复的问题,我很抱歉,如果是这样,请告诉我。
我在 debian 服务器上使用 Python (2.7),当我安装 pip 时,当我卸载并从另一个包管理器再次安装时,我遇到了奇怪的行为(猜测 apt 最终也使用了 pypa.io 版本)。
我做了什么
1.直接从pypa下载pip并用python安装
me:~$ curl -o get-pip.py https://bootstrap.pypa.io/pip/2.7/get-pip.py
me:~$ python get-pip.py
2.卸载pip
me:~$ pip uninstall pip
3.使用apt安装pip
me:~$ sudo apt-get install python-pip
我的问题?
当我现在运行 pip 时,出现以下错误:
me:~$ pip
bash: /home/local/me/.local/bin/pip: No such file or directory
我的问题?
当我运行命令时:
me:~$ which -a pip
我得到:
/usr/bin/pip
我可以看到似乎存在路径问题,但我不知道如何修复它,任何人都可以向我指出解决方案吗?这可能只是 $PATH 变量中的优先级问题吗?
谢谢!
答案1
这 100% 是 PATH 变量中的优先问题。另请记住,如果编辑 PATH,则需要重新加载/重新启动 shell(终端),因为 shell 会保留各种程序的已发现位置的缓存,因此仅编辑/重新加载 PATH 变量是不够的。程序位置缓存也必须刷新。
无论如何,这都是没有意义的。我强烈建议您安装 Pipenv。这是安装 PyPi 软件的官方推荐方式。它是 pip 的直接替代品,但具有无限更好的依赖项管理器、可重复(散列)安装、自动内部使用 virtualenv 来分离每个项目的项目依赖项以避免冲突,以及更好的配置文件(命名为 Pipfile 而不是requirements.txt)。
它将100%解决您的所有问题。
您还可以在同一台计算机上安装 pyenv,pipenv 会检测到它,并允许它准确管理每个项目文件夹使用的 Python 版本。要在文件夹中创建一个新项目并告诉它使用特定版本的 Python,您只需执行pipenv install --python=3.10
以下操作即可。