diff --git a/json_include.py b/json_include.py index a5d3751..b8ccc9d 100644 --- a/json_include.py +++ b/json_include.py @@ -22,8 +22,15 @@ def read_file(filepath): return f.read() +def is_string(obj): + try: + return isinstance(obj, basestring) + except NameError: + return isinstance(obj, str) + + def get_include_name(value): - if isinstance(value, basestring): + if is_string(value): rv = INCLUDE_VALUE_PATTERN.search(value) if rv: return rv.groups()[0] @@ -34,7 +41,7 @@ def walk_through_to_include(o, dirpath): if isinstance(o, dict): is_include_exp = False if set(o) == set([INCLUDE_KEY]): - include_name = get_include_name(o.values()[0]) + include_name = get_include_name(list(o.values())[0]) if include_name: is_include_exp = True o.clear() @@ -45,7 +52,7 @@ def walk_through_to_include(o, dirpath): if is_include_exp: return - for k, v in o.iteritems(): + for k, v in o.items(): if isinstance(v, OBJECT_TYPES): walk_through_to_include(v, dirpath) elif isinstance(o, list): @@ -113,7 +120,7 @@ def main(): args = parser.parse_args() - print build_json_include(args.dirpath, args.filename) + print(build_json_include(args.dirpath, args.filename)) if __name__ == '__main__': diff --git a/setup.py b/setup.py index 84658df..401ecd3 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ # Use semantic versioning: MAJOR.MINOR.PATCH -version = '0.1.4' +version = '0.1.5' def get_requires(): diff --git a/test/json_include_test.py b/test/json_include_test.py index ae03600..b36da09 100644 --- a/test/json_include_test.py +++ b/test/json_include_test.py @@ -28,5 +28,5 @@ def test_build_json_include(): def run_build_json_include(dirpath, i): rv = build_json_include(dirpath, i) expect = read_file(os.path.join(_path('expect'), i)) - print rv + print(rv) assert rv.strip() == expect.strip()