'ImportError: No module named pytz' when trying to import pylab?

nale picture nale · Oct 14, 2014 · Viewed 67.7k times · Source

As far as I can tell, I don't even need pytz for what I'm doing.

I'm re-learning python for image processing using the O'Reilly book 'Programming Computer Vision with Python' for work (and I'm also new to mac, so on both counts I apologise if this is a stupid question). Along with a 'empire.jpg' picture, I'm trying to run the script on page 16 which goes as follows:

from PIL import Image
from pylab import *
# read image to array
im = array(Image.open('empire.jpg')) # plot the image
imshow(im)
# some points
x = [100,100,400,400]
y = [200,500,200,500]
# plot the points with red star-markers
plot(x,y,'r*')
# line plot connecting the first two points
plot(x[:2],y[:2])
# add title and show the plot
title('Plotting: "empire.jpg"')
show()

but I get the following output with an error:

  File "plotch1.py", line 2, in <module>
    from pylab import *
  File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/pylab.py", line 1, in <module>
    from matplotlib.pylab import *
  File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/matplotlib/pylab.py", line 208, in <module>
    from matplotlib import mpl  # pulls in most modules
  File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/matplotlib/mpl.py", line 4, in <module>
    from matplotlib import axes
  File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/matplotlib/axes.py", line 18, in <module>
    from matplotlib import dates as mdates
  File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/matplotlib/dates.py", line 82, in <module>
    import pytz
ImportError: No module named pytz

I'm using OS X 10.9.4. I've installed matplotlib and numpy from macpython.org and I've installed scipy 0.11.0 all for python 2.5.

Do I even need pytz? If not, how can I get around this error?

Answer

Itay Kahana picture Itay Kahana · Jan 28, 2015

pylab requires pytz. The easiest way to install a package in Python is to run pip install pytz.

Today, Python comes with pip pre-installed, but use these instructions if you need to install it: Installation: Do I need to install pip?