You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

激活虚拟环境后pip freeze显示全局库,如何生成venv的requirements.txt?

Fixing Virtual Environment Dependency Isolation for Flask Project in Anaconda

Hey David, it sounds like your virtual environment isn’t properly isolating its dependencies from your global Anaconda setup—super frustrating when you’re trying to get a clean requirements.txt! Let’s walk through how to fix this step by step:

1. First, Check if You’re Really Using the Virtual Environment’s pip

The most common culprit here is that even though your terminal shows (venv), you’re still using the global Anaconda pip instead of the one inside your virtual environment.

  • On Linux/macOS, run this after activating venv:
    which pip
    
  • On Windows, run:
    where pip
    

If the output points to your Anaconda installation (like ~/anaconda3/bin/pip or C:\Users\YourName\anaconda3\Scripts\pip.exe) instead of your venv directory (e.g., ./venv/bin/pip or .\venv\Scripts\pip.exe), that’s the root problem.

2. Force Use of the Virtual Environment’s pip

Skip relying on your terminal’s PATH—directly call the pip inside your virtual environment to generate the correct requirements.txt:

Linux/macOS:

./venv/bin/pip freeze > requirements.txt

Windows:

.\venv\Scripts\pip.exe freeze > requirements.txt

This bypasses any environment variable conflicts from Anaconda and ensures you’re only capturing packages installed in venv.

3. Rule Out Anaconda Base Environment Interference

Anaconda’s base environment often sticks around in your terminal session even if you create a venv. Try deactivating it first before activating your virtual environment:

conda deactivate
# Then activate your venv
source venv/bin/activate  # Linux/macOS
# OR
.\venv\Scripts\activate  # Windows

Now run pip freeze again—you should only see Flask and its dependencies listed.

4. Verify the Virtual Environment’s Python Interpreter

Double-check that you’re using the venv’s Python too, since pip is tied to the active Python. Run:

python -c "import site; print(site.getsitepackages())"

You should see a path that ends with venv/lib/pythonX.X/site-packages (Linux/macOS) or venv\Lib\site-packages (Windows). If not, use the venv’s Python to run pip:

./venv/bin/python -m pip freeze > requirements.txt  # Linux/macOS
.\venv\Scripts\python.exe -m pip freeze > requirements.txt  # Windows

Once you follow these steps, your requirements.txt should only include the packages installed specifically in your venv virtual environment, not the global Anaconda libraries like pandas or xlwings.

内容的提问来源于stack exchange,提问作者David 54321

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 08:06:48