from typing import Iterable
import six


def is_nonstring_iterable(value):
    """
    :param value: the object to check
    :return: whether the given value is a non-string iterable object
    """
    return isinstance(value, Iterable) and not isinstance(value, six.string_types)