【问题标题】:frustrations over python venv and global modules对 python venv 和全局模块的不满
【发布时间】:2020-02-01 08:39:28
【问题描述】:

几个月前我写了一个网络爬虫程序,我让python -m venv venv 安装了一堆 pip,用pip list 检查并仔细检查,一切看起来都很好。

今天我想再刮一次,所以我用pip list检查了我的source venv/bin/activate,一切看起来都很好,只是一直没有这个和那个的模块......

但是当我停用它时,它会退回到我的全局安装模块,我的程序运行得非常好。我简直不敢相信,所以我做到了: rm -rf venvpython -m venv source venv/bin/activate pip install -r requirements.txt 一切都安装好了,检查pip list,没有这个或那个的模块。

谁,请告诉我发生了什么事? 谢谢!

【问题讨论】:

  • 检查你的python路径which python
  • python3.8,我确定我没有使用 2.X,并且 python 3.8 doc 推荐使用 venv,这就是我坚持使用它的原因

标签: python virtualenv python-venv python-3.8


【解决方案1】:

为了确保正在使用什么 python 以及哪个 python 链接到当前 pip:

  • which python 查看 python 可执行文件在哪里(或者 which python3which python3.7 等...)
  • 运行python显示python的版本
  • pip -V 显示了它所链接的 python
  • 使用python -m pip list确保pip链接到python
  • python -m site 显示的是site-package 所在的位置
  • 写入python 并多次点击TAB 会显示路径中可用的python(取决于操作系统)

这更像是一种调试正在使用的python的方法。

【讨论】:

  • 实际上我应该删除所有 venv 文件,然后重新安装所有内容,但最近我发现了很棒的 pipenv install 和 pipenv shell,改变了生活!
猜你喜欢
  • 2021-04-23
  • 2021-04-28
  • 2020-10-11
  • 2014-02-18
  • 1970-01-01
  • 2020-03-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多