Skip to content

Instantly share code, notes, and snippets.

@bencharb
bencharb / flatten.py
Last active February 23, 2016 17:31 — forked from simonw/flatten.py
flatten()/unflatten()
DEFAULT_DELIM = '.'
NOPREFIX_PREFIX = '__NOPREFIX__'
import itertools
import collections
def is_non_string_sequence(seq):
return isinstance(seq, collections.Sequence) and not isinstance(seq, basestring)
def is_dict(d):
return isinstance(d, collections.Mapping) or hasattr(d, 'iteritems') and not isinstance(d, basestring)