VS Code doesn't see the installed modules - python

For some reason VS Code asked me to choose the default program for running code, I missed and chose NotePad. When I would hit "run" all it would do is open Notepad. Then I changed the default app to VS Code (in Windows settings), and nothing would happen after hitting "run".
I reinstalled VS Code. Now it doesn't see the installed modules (from PyPi):
ModuleNotFoundError: No module named 'pandas'
The modules are installed and were seen in the past (before I accidentally changed the settings).

You need to select the correct python interpreter version and try importing pandas again. If it doesn't work then you need install pandas using python version used by your VS Code. You can do this by opening terminal in VS Code and executing the following command
python3 -m pip install pandas

Related

VSCode not recognizing python modules

My python GUI has been working fine from VSCode for months now, but today (with no changes in the code that I can find) it has been throwing me an error in the form of:
Exception has occurred: ModuleNotFoundError
No module named '_tkinter'
This error occurs for any import that is not commented out. The GUI works as intended when ran from the terminal using "python3 filename.py",but the run/debug function in VSCode keeps throwing that same error. I'm relatively new here so I have no clue what the problem could be, any insight or things to try would be appreciated.
Press Ctrl+Shift+P and type "select interpreter", press Enter and select the python interpreter path that you want to use by default in current project.
If currently selected one does not have some libraries installed, you may see error from Pylance.
The cause of this problem may be that there are multiple python versions on your machine, and the interpreter environment you are currently using is not the same environment where you installed the third-party library.
Solution:
Use the following code to get the current interpreter path
import sys
print(sys.executable)
Copy the resulting path, and then use the following commands to install third-party libraries for the current environment (using numpy as an example)
C:\Users\Admin\AppData\Local\Programs\Python\Python36\python.exe -m pip install numpy

Pandas not found in Visual Studio Code even though it is definitely in the env

I am running Visual Studio Code on two machines, both set up essentially the same way. One is an iMac, the other a MacBook Air. In one of my projects, on the iMac, it doesn't recognize that pandas is installed, even though it is in the environment.
Here is the VSC python interpreter selection:
And here you can see that:
it is not able to import pandas
I'm in the env
pip3 freeze shows pandas
pip3 install indicates that pandas is already present
I've tried uninstalling pandas and reinstalling it, but that doesn't help. I've tried making sure it's in the non-env python install (it is), but that doesn't help.
I have other projects on the same computer set up essentially the same way, and pandas works fine. I also have the same project on my laptop, with the same setup, and it is working there too. I'm kinda stumped. I guess I'll be working on it on the laptop for now, but I'd appreciate any insight people may have...
Edits
if I run the code directly in the terminal, using the venv, it works fine
pip3 shows pandas 1.1.1 in the terminal; still haven't figured out whether I can get VSC to show me what it's seeing.
I figured out how to call pip from inside Python, and when I call this code from inside VSC it doesn't show pandas, but if I call it (python3 test.py) from the terminal, it does. So, clearly, I have to figure out why VSC isn't actually using the right environment.
import pip
pip.main(["freeze"])
this is getting even stranger; at #jillcheng's suggestion, I looked in the actual env directory and it doesn't have the package installed. This jives with the problem and the above test (running pip freeze from inside py code):
it does NOT, however, match up with the fact that if I activate the environment from the terminal window, it shows the package, as shown in the earlier screenshot.
Thank you!
Dylan
According to your description, it is command that you could refer to the following steps:
Enter the current virtual environment in VSCode.
Enter 'pip --version ' to check if the pip currently used is from the current environment: (This ensures that using pip to install pandas module will be put into the current virtual environment.)
List of pips before installing pandas module: (There is no module pandas in the list.)
After installation:(I use the command 'pip install pandas'(windows10), mac: pip3 install pandas)
If it still has wavy lines, try reloading vscode.(Ctrl+Shift+p, Developer: Reload windows ). The module pandas can be used:
Check the installation package:
If the pip list shows the pands module, but we still can't use it, we can find the current virtual environment folder and check whether there is pandas installation package:

Visual Code on Windows can't find module after installing it with PIP. Using wrong Python in Terminal window?

I am using Visual Code 1.47.0 on Windows 8.1 with the latest version of the Python extension installed too. I just installed a module using pip. I then created a new Python file to test it. The IDE highlights the import statement as an error and the drop-down info box says "Unable to import 'extpylib'. If I try to run/debug the test file, I get a traceback error saying:
C:\Users\User\AppData\Roaming\Python\Python38\Scripts
Exception has occurred: ModuleNotFoundError
No module named 'extpylib'
File "C:\Users\user\Documents\PythonProjects\test-extpylib.py", line 2, in <module>
import extpylib
If I run the pip install command again, even with the "--upgrade" command line argument, it says everything is installed and that I'm using the latest build. I am wondering if this is happening because the VSCODE Terminal window is still using Python 2.7, and not the version I have selected in the status bar, which is Python 3.8.3 64-bit? I am not using the Code Runner extension.
I assumeg that this mismatch of versions between the IDE and the VSCODE Terminal window is causing my issue? If so, how can I get the VSCODE Terminal window to use the same version as that which is selected in the IDE? If not, what is the real problem and how can I fix it?
You may have many python paths and VS code is using the wrong one. Choose the right interpreter path just clicking here:
I solved this by closing and re-opening the vs-code after installing new package.
It seems like an environment issue. In my own Visual Studio code integrated terminal, when I type which python and which pip, I get the correct path to both python and pip executables. So this:
I am wondering if this is happening because the VSCODE Terminal window is still using Python 2.7, and not the version I have selected in the status bar, which is Python 3.8.3 64-bit?
Definitely seems to be the issue.
If your VSCODE terminal still uses Python 2.7, you could follow the tips presented here:
However, launching VS Code from a shell in which a certain Python environment is activated does not automatically activate that environment in the default Integrated Terminal. Use the Terminal: Create New Integrated Terminal command after VS Code is running.
and
Note: conda environments cannot be automatically activated in the integrated terminal if PowerShell is set as the integrated shell. See Integrated terminal - Configuration for how to change the shell.
and
Changing interpreters with the Python: Select Interpreter command doesn't affect terminal panels that are already open.
Of course, the package you installed in an environment is independent of other environments.
As you said the VSCode Terminal using Python2.7 while the status bar shows the selected interpreter is Python3.8.3 64-bit. This meaning you are using the global python(3.8.3) to run the python file while you install the package to the Python(2.7) environment.
Solution:
After you selected the python interpreter in the status bar, you need to activate the environment in Terminal through shortcut 'Ctrl+Shift+`'. You can through these commands to check which environment you are using:
In the terminal:
By command "pip --version" to check which pip you are using.
By command "python" -> "import sys; sys.executable" to check which python you are using.
By command "python" -> "import sys; sys.path" to check which 'site-package' the interpreter searching for.
pip command that was used to install the package is based on a different version of python versus what VS Code is using.
Check the python version of your pip command, run pip --version. For example, on my system, this is the output of this command.
$ pip --version
pip 22.0.4 from /Library/Python/3.8/site-packages/pip (python 3.8)
Check the version of code that VS code is using. For VS code 1.61, the python version will be visible at the bottom left corner while a python file is open in the editor. Screen shot of the same is given below. You can also observe from the screen shot that lazy_streams package is not being recognised by VS code.
To solve the error in VS code, update the python version in VScode to be same as that of pip. Updating of the version can be done by simply clicking on the Python version displayed, which will further prompt you to select among all available python versions on your system.

Keyboard module installed but not detected

I am on MacOS and have installed the Keyboard module. It took a while to install the first time, but eventually it finished and, when I try running my script in Pycharm, I get ModuleNotFoundError: No module named 'keyboard'.
The first time I installed it was within Terminal with pip3. After that I tried with Git Clone and it told me that Keyboard was alredy installed. I know this to be correct because when I enter help("modules") into a Python window, it shows up on the list.
Edit: I have also tried restarting Pycharm
The problem is most probably in PyCharm's interpreter. You may try to reset the interpreter to your latest python3.
In this link (https://www.jetbrains.com/help/pycharm/configuring-python-interpreter.html), please see the section "Changing the project interpreter in the project settings".
Hope it works!

Visual Studio Code windows , Python Pandas . No module named pandas

I set the variables for Env. All necessary modules for Pandas operation are installed by pip.
I wanted to run the code to display it in "Output". I run with: Alt + CTRL + N(or right click -> Run code).
In output returns the message:
But when I run in the terminal (right click -> Run Python File in Terminal), the code works correctly.
I would like the code to run correctly in output(right click -> Run code), not in the terminal.
Any suggestions?
I had a similar problem in VS Code. I was not able to find modules like Pandas, Selenium etc. Imports were underlined with a red colour.
Fixed the issue by changing the version of Python 3.7.3 64-bit to version 3.8.1 64-bit.
Procedure:
Hit Ctrl + Shift + P
Select Python: Select Interpreter
Choose the latest installed version of Python (no more red underlines)
#Davdei It is good practice to work with a virtual environment, so you can test against different versions of Python.
To get the list of available Python interpreter use (⇧⌘P) on Mac
or alternatively, you can click the status bar
It seems that the module pandas is installed in a virtual envorinment which you are not accessing via VS Code.
I'd suggest you to install pandas in default python as well via
pip install pandas
This way the VS Code will work it out just fine.
Else:
In VS Code console, activate the virtual enviornment in which you have installed the pandas module, and then run it. It should work
This can also happen when the specific module is not installed using pip3, so simply installing the module using pip3 would solve the problem.
pip3 install pandas
I had a same problem and none of the above seems to solve the issue. Later found that it has to do something with the python interpreter. I created virtual environment and my terminal can see it, but not the python script file where the code exists. Therefore, it must be an interpreter problem. Changed the interpreter to correct location:
cd .venv/Scripts/
./activate
(Here ".venv" is my virtual environment name. It could be different too (eg. "venv")
With an existing installation via pip:
pip3 install pandas
This solved the problem.

Categories