Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

VS Code: Python Interpreter can't find my venv

I've been stuck on this for a few days, kindly help me if you can.

I have my venv folder on my root project folder. When I try to set the Python Interpreter, it shows me only the Python installed in my machine and not the one in my root folder.

It was working fine until I formatted my PC and installed windows 10 64 bits. (was running on windows 7 64 bits prior)

Things I have tried:

  • Set the path manually via pythonPath and/or venvPath, in both workspace and user settings:
    "python.pythonPath": "F:/Web Dev/Python/Django/project_x_v2/backend/venv/Scripts/python.exe",
    "python.venvPath": "F:/Web Dev/Python/Django/project_x_v2/backend/venv/Scripts/python.exe",

enter image description here

It shows me the correct location in the placeholder but I don't have the option to choose it from the dropdown list:

enter image description here

Any ideas how I can solve this?

Thank you very much.

EDIT:

  • In the image it shows "python", but I have corrected it to "python.exe" and it still does not work;
  • ~\AppData\... is located in the disk C:\ while my venv is located in the disk F:. I am not sure whether that is relevant though;
  • The venv runs fine in the console.
like image 282
Diego Fortes Avatar asked Nov 17 '19 23:11

Diego Fortes


People also ask

Why is VSCode not using the correct Python interpreter?

This is because VSCode is not using the correct python interpreter. There are two ways in which you can fix this. 1. Update Venv Path Settings in VSCode Open VSCode preferences ( Ctrl + ,) and search for “venv”. Add ~/.virtualenvs to the “Venv Path” settings, like so: Restart VSCode and click on the interpreter version on the left-bottom corner.

Why is venv not working in VSCode?

This is because VSCode is not using the correct python interpreter. There are two ways in which you can fix this. 1. Update Venv Path Settings in VSCode Open VSCode preferences ( Ctrl + ,) and search for “venv”.

How to fix VSCode can’t open virtual environment in Python issue?

Open VSCode preferences ( Ctrl + ,) and search for “venv”. Add ~/.virtualenvs to the “Venv Path” settings, like so: Restart VSCode and click on the interpreter version on the left-bottom corner. Now, you will be able to see the virtual environment python interpreter in the interpreter list. Select it, now the issue should be resolved. 2.

How do I change the interpreter version in VSCode?

Open VSCode preferences ( Ctrl + ,) and search for “venv”. Add ~/.virtualenvs to the “Venv Path” settings, like so: Restart VSCode and click on the interpreter version on the left-bottom corner.


1 Answers

The only solution I found was to delete the venv and recreate it. I followed these steps but I'll provide a brief summary for Windows:

  1. Activate your virtualenv. Go to the parent folder where your Virtual Environment is located and run venv\scripts\activate. Keep in mind that the first name "venv" can vary.
  2. Create a requirements.txt file. pip freeze requirements.txt
  3. deactivate to exit the venv
  4. rm venv to delete the venv
  5. py -m venv venv to create a new one
  6. pip install -r requirements.txt to install the requirements.
like image 57
Diego Fortes Avatar answered Nov 16 '22 02:11

Diego Fortes