diff --git a/tablib/__init__.py b/tablib/__init__.py index 24d5fdb..c7ae7c0 100644 --- a/tablib/__init__.py +++ b/tablib/__init__.py @@ -1,7 +1,7 @@ """ Tablib. """ -from tablib.compat import ( +from tablib.core import ( Databook, Dataset, detect, import_set, InvalidDatasetType, InvalidDimensions, UnsupportedFormat ) diff --git a/tablib/compat.py b/tablib/compat.py index 85ae9b4..09a56b6 100644 --- a/tablib/compat.py +++ b/tablib/compat.py @@ -10,9 +10,24 @@ Tablib compatiblity module. import sys +is_py3 = (sys.version_info[0] > 2) + + + +try: + from collections import OrderedDict +except ImportError: + from tablib.packages.ordereddict import OrderedDict + + +if is_py3: + from io import BytesIO + import tablib.packages.xlwt3 as xlwt + from tablib.packages import markup3 as markup + +else: + from cStringIO import StringIO as BytesIO + import tablib.packages.xlwt as xlwt + from tablib.packages import markup -from tablib.core import ( - Databook, Dataset, detect, import_set, - InvalidDatasetType, InvalidDimensions, UnsupportedFormat -) diff --git a/tablib/core.py b/tablib/core.py index 896dfcc..55d057b 100644 --- a/tablib/core.py +++ b/tablib/core.py @@ -15,10 +15,8 @@ from operator import itemgetter from tablib import formats import collections -try: - from collections import OrderedDict -except ImportError: - from tablib.packages.ordereddict import OrderedDict + +from tablib.compat import OrderedDict __title__ = 'tablib' @@ -795,7 +793,7 @@ def import_set(stream): format.import_set(data, stream) return data - except AttributeError as e: + except AttributeError: return None diff --git a/tablib/formats/_xls.py b/tablib/formats/_xls.py index d820250..48dcc0b 100644 --- a/tablib/formats/_xls.py +++ b/tablib/formats/_xls.py @@ -5,15 +5,7 @@ import sys - -if sys.version_info[0] > 2: - from io import BytesIO - import tablib.packages.xlwt3 as xlwt - -else: - from cStringIO import StringIO as BytesIO - import tablib.packages.xlwt as xlwt - +from tablib.compat import BytesIO, xlwt title = 'xls'