Issue
I have downloaded mysql.connector and mysql but still there is the same issue
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="Password"
)
print(mydb)
ModuleNotFoundError: No module named ‘mysql’ – this is the error
Solution
There’s two potential solutions to this, but first a piece of advice: never run the command pip
directly. What you really want is <path to python> -m pip
, replacing <path to python>
with the path to the specific Python you want to install for. That way you guarantee that pip will install into the environment/interpreter you expect instead of just whatever pip
happens to be first on your PATH
.
With that out of the way, option one is to make sure that the Python environment you have selected in the Python extension matches the one you have been installing into. Simply running pip
does not guarantee this, and so it’s quite possible you have been installing into one version of Python but connecting the Python extension to another. You can run Python: Select interpreter
in the command palette to choose the proper environment (or click on the Python interpreter details down in the status bar).
The second option — and in my opinion the better one — is to create a virtual environment and do the installation in there. So you could do <path to python> -m venv .venv
in the directory of your workspace and the Python extension will pick this up and ask if you want to use that virtual environment. When you open a new terminal it should activate that virtual environment, letting you run python -m pip
to install into that virtual environment (you can also do the activation manually or simply specify the path to the Python interpreter in the virtual environment directly when running -m pip
).
Answered By – Brett Cannon
This Answer collected from stackoverflow, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0