PyAudio won't import on Windows - python

I have used pip to install PyAudio, yet when I try to import it using import pyaudio, I get the following error message
ImportError : No module named PyAudio.
I tried to reinstall PyAudio, and it says that I already have it installed.

Please ensure you use import pyaudio, and not import PyAudio (as the error message suggests). Python is case sensitive.
This scenario can also be caused if you have multiple Python environments installed on your machine.
Some of the environment problems can be checked in the following way - open cmd and run:
where python
where pip
pip should be in the same directory as Python, under the "Scripts" folder.
If you find that the path to pip and the path to Python are completely different, some possible solutions are:
Change your current working directory in the cmd using cd. Make it point to the location of the correct pip. Then run pip install.
Remove the duplication of your Python environments. If you need more than one environment, use one of the available Python virtual environment solution (conda, virtualenv etc)

Related

"No module named 'sympy'" Error. Problem occurs after installation

I am new to Python.
I am trying to use the Sympy package.
I am running Python 3.11 in Pycharm
I am using Windows 10.
It displays:
ModuleNotFoundError: No module named 'sympy'
I ran pip install sympy, it installed it. And when I try reinstalling it, it displays:
Requirement already satisfied: sympy in c:\users\jrk\appdata\local\programs\python\python311\lib\site-packages (1.11.1)
Requirement already satisfied: mpmath>=0.19 in c:\users\jrk\appdata\local\programs\python\python311\lib\site-packages (from sympy) (1.2.1)
I tried going through this guide
https://bobbyhadz.com/blog/python-no-module-named-sympy
but it did not work.
I tried uninstalling it and reinstalling it
both with pip and mpip
it unfortunately didnt work
at the top you can see which interpreter i am using
I can see that there is a file called sympy in my downloads folder, maybe that has to be relocated, but where to?
My instructions might be a bit rusty as I don't regularly use Windows for Python but here goes:
You'll notice that the path to your Pycharm Python interpreter (c:\Users\jrk\PycharmProjects..) is different than the path reported by pip in your error messages (c:\Users\jrk\appdata..).
It's perfectly normal to have multiple versions of Python around, but you'll need to be a bit careful about which one you're invoking.
It's unclear from your description where exactly you are running the pip commands, but usually if you open built-in terminal in Pycharm, it most likely has the right virtual environment activated automatically. The command line prompt should begin with (venv) if that is the case. If you then run pip install sympy you ought to have it installed in the correct place.
If you're using a regular command prompt, you can also manually activate the virtual environment by running the activate or activate.bat file that you'll find in c:\Users\jrk\PycharmProjects\pythonProject\venv\Scripts\ folder.
Might want to also read a bit about virtual envs # https://docs.python.org/3/library/venv.html
I found the solution. I do not know why it worked. But i moved the project from the local file on my computer to the server we use in our company, and then it worked
Try Uninstalling it and reinstalling
pip uninstall sympy
pip install sympy

Installing Rasterio

I tried installing Rasterio library using command- pip install rasterio and also used conda commands in anaconda cmd, both are didn't worked and it's taking too long to install so I aborted the process. Let me know in detail how to install raserio library for python?
I tried with installing GDAL and raterio whl file by using pip commands. It got installed, but when I tried to import module- it's giving me an error saying No module found. Please help to fix this.
Thanks in advance
I just had the similar problem, and tl:dr the issue for me was multiple environments, like Ameya said. Here's a longer version of Ameya's spot-on answer with steps to diagnose and fix.
Without realizing it, I had two environments going on: my jupyter notebook was running python 3.10 and my global python was running 3.9, and each was looking for site-packages in different locations (/opt/homebrew/Cellar/jupyterlab/3.4.7/libexec/lib/python3.10/site-packages vs /Users//Library/Python/3.9/lib/site-packages).
This happened because I had trouble with getting python and specifically jupyterlab running on Monterey and the only fix for me was using homebrew to manage the packages. Anything I installed with brew from the command line, went into /opt/homebrew/Cellar... etc and could be seen by my jupyter notebook. Anything I used pip install to get from within an open notebook also went onto this path that my notebook could see. But anything I used pip install from the command line to get, went to the path of the global environment's site packages. Then, my jupyter notebook couldn't see them.
You don't mention that you are using jupyter notebook but perhaps something analogous could happen between multiple environments for you.
You can check if this is the case for you by doing the following:
start python from the command line
import sys
run sys.path
start jupyter notebook, or start python from your other environment
same thing, import sys, run sys.path
Are they the same? If not, probably pip is putting your rasterio in other python env site-packages.
To fix, you can either pip install from within your preferred environment, or copy and paste the site packages corresponding to rasterio from one site-packages location to the other.

Why do I receive a "no module named scipy" error even after I have installed the module via pip?

I am using Python 3.9 on Windows 10 which I downloaded directly from the Microsoft Store.
I tried running a script in PowerShell: Bash *.sh
This script is supposed to tell my computer to execute a .py script which uses scipy.io and many other modules.
Then I received this error:
ModuleNotFoundError: No module named 'scipy'
My strategy was to make sure pip was up to date, then use it to install the desired packages, then run some commands to see if the packages were installed.
I ran this command to update pip:
python3 -m pip install --upgrade pip
I ran this command to get some modules:
python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
I also tried this command just in case:
pip install scipy
and got the result:
Requirement already satisfied ...
I ran the command pip list to make sure scipy was in the list (and it was there).
Then I ran the command python and my prompt changed to ">>>" and entered import scipy and did not receive any errors.
I am very confused as to how I have scipy installed yet have my script tell me it isn't there. Please help!
From what you have posted it looks like you have more than one python environment path in your system, because of which when you are installing these libraries they are installed at certain location while when you run the bash script it is using some other python location.
Try using these commands in both your terminal (cmd in windows) as well as in you bash script:
import sys
print(sys.path)
This will give you the python environment path (location where your python libraries are present), then compare both the path you get from your terminal as well as bash. Add the path you got from the terminal to your global environment in order to make sure the same python version is used everywhere.
You can also refer to this: Python modules not found over terminal but on python shell, Linux
I had the same issue. You might have multiple versions of python and you only installed scipy on the one you are not using
OR
you are using an IDE which has the option to use packages you install that are not by default in python. Pycharm has that. When you make a new project, it has a tick option saying "Inherit global site-packages" which means it will use additional packages you have installed any.

Unresolved import

I get this error for every single package that I have downloaded from pip whenever I type import [package] or any variation there off. This also means that the packages do not work. This is strange, since it used to work.
Edit: Apparently it works just fine on Jupyter Notebooks, but not in a normal python file.
it seems that you are installing the module in a wrong way, specifically, to improper directory (or python version).
you can alway check if module/package is installed or not by this:
pip list
if you can see the module in list, then it is installed, if not, then you need to install it properly.
sometimes you may have different versions of python installed, you install the package to version X and try to run it on version Z. all you need to do is to clarify your python version, check if the pip is referring to the python version by doing this:
pip -V
it shows the pip version along with the python version it is referring to.
The BEST WAY
always try to create a virtual environment and install packages there.
creating a virtual environment
python -m venv <VENV_NAME>
then activate it:
source <VENV_NAME>/bin/activate # MacOS & Linux
<VENV_NAME>/Scripts/activate # Windows
then, install your packages. there shouldn't be any problems after that.

unable to successfully import/ use pyautogui library in my IDE

I am attempting to use a small script to move my mouse slightly every minute or two to make the appearance that I am sitting at my desk (dont tell my boss please)
is anyone able to assist in why this might be happening?
from my command prompt I was able to successfully install pip install pyautogui
note, that: pip3 install autogui was not recognized
once I opened up pycharm, I ran the code, and got the below error:
ModuleNotFoundError: No module named 'pyautogui'
I also checked to make sure I had python 3 in command line using pip version = anaconda3\lib\site-packages\pip (python 3.7)
**full code below for reference
import pyautogui
import time
import sys
from datetime import datetime
pyautogui.FAILSAFE = False
numMin = None
if ((len(sys.argv)<2) or sys.argv[1].isalpha() or int(sys.argv[1])<1):
numMin = 1
else:
numMin = int(sys.argv[1])
while(True):
x=0
while(x<numMin):
time.sleep(60)
x+=1
for i in range(0,200):
pyautogui.moveTo(0,i*4)
pyautogui.moveTo(1,1)
for i in range(0,3):
pyautogui.press("shift")
print("Movement made at {}".format(datetime.now().time()))
https://github.com/Johnson468/Stay-Awake
for reference - i am using windows
You cannot import pyautogui from python 3 interpreter in pycharm because it is not installed.
When you ran pip install pyautogui you installed it on your python2.7 environment.
When you tried to installed it with pip3 you ran anaconda's pip (accordint to you error).
you can check which pip is used inside the CMD with the command where pip3.
If it is not found you can try running it like this: python -m pip but make sure you are running python3!
I highly recommend installing everything in venv virtual environment to make sure nothing is missing and you don't have any dependencies issues.
Or if you are new to python, uninstall all different instances and only keep one (probably python3 in your case), or edit you PATH in Windows
Furthermore I'm pretty sure when you are running pip from your console you are using another instance of it on your computer then the one you set as interpreter on pycharm, hence you couldn't use pip3 at all.
If none of the above helped, please add more details yo your question and I'll edit the answer.
Summary: You have a few instances of python installed on your computer (at least one of python2.7 and one of anaconda), when you run python or pip from the CMD if refers to the python2.7 one.
But when you chose an interpreter for you project in Pycharm you chose a python3 instance, which is obviously doesn't contain pyautogui.
Make sure you are using the right python instance when setting it up in Pycharm and when installing packages.
I answered this question recently: Problem with Python modules import on Mac
The issue might be that you don't have pip installed.
I know most Mac's have pip and Python pre-installed, but it wouldn't hurt to try: sudo easy_install pip
If this doesn't seem to be the issue, you might be running the pip install packageName in the wrong directory.
You will need to access your scripts folder in python and run the pip install packageName command in there. Here is a resource which should help you reach that directory: https://datatofish.com/install-package-python-using-pip/
This was answered for a Mac, but switching the commands to another OS shouldn't be hard. Just make sure pip is installed and that you're installing in the right directory.

Categories