Hi I'm learning linear algebra with python with an Edx course. ().
On "02.4.2.10 Practice with matrix-vector multiplication" with the first box, the code is:
import generate_problems as gp print("What is the result of the matrix vector product below?") p = gp.Problem() p.new_problem() generate_problems is a module that the professor at Edx created. However, I got an error importing sympy.
I got the error below:
--------------------------------------------------------------------------- ImportError Traceback (most recent call last) <ipython-input-10-79d56e0988cb> in <module>() ----> 1 import generate_problems as gp 2 print("What is the result of the matrix vector product below?") 3 4 p = gp.Problem() 5 /Users/user/Desktop/Course/Python/ipython/notebooks-master/generate_problems.py in <module>() 2 from numpy import matrix 3 ----> 4 from sympy import init_printing, Matrix, MatMul, latex, Rational, zeros 5 from IPython.display import Math 6 ImportError: No module named sympy I downloaded and installed sympy and it works in sympy directory in the terminal(Mac OS X yosemite) if I import.Could someone help me?
23 Answers
Given that you are new to Python I would advise that you install a distribution that already includes the complete scientific python stack such as WinPython or Anaconda. If it is specifically sympy you are after you can play around online at Sympy live. If you want to stick to your distribution try installing sympy with
pip install sympy rather than downloading it manually.
1you can also do it in the jupyter notebook. Write in a cell this, and Run that cell:
!pip install --upgrade !pip install sympy import sympy If your kernel uses python3, then use "pip3" instead. You may have to do Kernel->Restart, if it doesn't work straight away.
If it still doesn't find the module because Jupyter doesn't load the correct folder where it is installed. then consider doing either
import sys sys.path.append('my/path/to/module/folder') #the (successful) line "!pip install sympy " should tell you where this path is or (on the bash terminal)
echo "PYTHONPATH=\"$PYTHONPATH:my/path/to/module/folder\"" >> ~/.bashrc source ~/.bashrc # then restart jupyter notebook 2I had the same issue when I was trying to import a module function like
from sympy.solvers.ode.subscheck import checkodesol, checksysodesol The IPython terminal throws ModuleNotFoundError: No module named 'sympy.solvers.ode.subscheck'; 'sympy.solvers.ode' is not a package. But the same command was working in my Anaconda terminal while running Python. It turned out both were different versions of Sympy. Actually, I had cloned the git repository and setup the latest dev version while the IPython was using the version in the site-package directory of Anaconda which didn't have the module I was trying to import.