简体   繁体   中英

Why can't Python find the module I installed?

Presently I'm using Python on a Windows system. I installed Python 3.10 from Anaconda and also the Pycharm IDE. I have ensured that Python is in the correct path in the environment variable. I have also replicated this problem using two different versions of Python, 3.10 and 3.9.

Very simply, in PyCharm, I open a terminal and type

conda install -c numpy numpy. 

Then, I write a new "main.py" script. I have one line: "import numpy". I receive the error:

Traceback (most recent call last):
  File "C:\Users\---\PycharmProjects\pythonProject3\main.py", line 17, in <module>
    import numpy
ModuleNotFoundError: No module named 'numpy'

What am I doing wrong?

Going on advice from a friend, I created a new PyCharm project sitting not in my user directory but on the C: drive, and got the same error. Finally, when trying to re-install the package using either using either pip or conda, I get this message:

# All requested packages already installed.

There main reason for this is

You are running your main.py in different environment rather than where you installed numpy.

If you trying to run it via cmd use this method

Check which environment you are in right now. refer this and this . But the most easiest way to do this is use where command in windows cmd. C:\> where python or C:\> where python3 . You will get the path of activated interpreter.

list conda envs - conda env list

activate conda env - conda activate <env name>

then run this command. pip freeze . and check is there numpy in the list. If not you have to find and activate the environment where you have installed numpy.

If you want to run it in pycharm

Refer this on how to change pycharm interpreter. https://www.jetbrains.com/help/pycharm/configuring-python-interpreter.html

You have 2 versions of Python:

  1. Default Python (used everytime you open your command prompt and type python or python3 )
  2. Anaconda is installing packages in a virtual environment, using it's own Python (it is located in a different path)

You can see the path of your installed python using python -c "import os, sys; print(os.path.dirname(sys.executable))"

You have 2 Options:

  1. Configure the PyCharm in order to use the anaconda Python. https://www.jetbrains.com/help/pycharm/configuring-python-interpreter.html#view_list
  2. Open a command prompt in the project's folder (you can do it easily using PyCharm). Type conda env list . This will show you all available anaconda virtual environments. Choose 1 of them and type conda activate <env_name> , where <env_name>=the name of the environment. Then, run your program using python <name_of_your_program>

You can see the paths where the anaconda environments and packages are installed using conda info

Many things can cause this, usually its one of these

  1. You may have to restart your terminal, or IDE if running in there, after installing a package to "refresh" the environmental path
  2. The package is not in the environmental path

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM