diff options
author | Robert Kern <robert.kern@gmail.com> | 2008-04-17 20:16:11 +0000 |
---|---|---|
committer | Robert Kern <robert.kern@gmail.com> | 2008-04-17 20:16:11 +0000 |
commit | ddde39b22effbcd4799dc2dd4a229dcac0964205 (patch) | |
tree | 47bd9236e33bc38070c92c1c3a0fe80093820388 /numpy/lib/_datasource.py | |
parent | 6e78d7dde1bc3f6247afde492bae4ae830e95d65 (diff) | |
download | numpy-ddde39b22effbcd4799dc2dd4a229dcac0964205.tar.gz |
Don't require gzip or bz2 until the actual functionality is requested.
Diffstat (limited to 'numpy/lib/_datasource.py')
-rw-r--r-- | numpy/lib/_datasource.py | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/numpy/lib/_datasource.py b/numpy/lib/_datasource.py index 06aae85d8..3fe1df615 100644 --- a/numpy/lib/_datasource.py +++ b/numpy/lib/_datasource.py @@ -34,17 +34,24 @@ Example: __docformat__ = "restructuredtext en" -import bz2 -import gzip import os import tempfile from shutil import rmtree from urllib2 import urlopen, URLError from urlparse import urlparse - # TODO: .zip support, .tar support? -_file_openers = {".gz":gzip.open, ".bz2":bz2.BZ2File, None:file} +_file_openers = {None: open} +try: + import bz2 + _file_openers[".bz2"] = bz2.BZ2File +except ImportError: + pass +try: + import gzip + _file_openers[".gz"] = gzip.open +except ImportError: + pass def open(path, mode='r', destpath=os.curdir): |