code: def is_collection(obj):
      """The opposite of :func:`is_scalar`.  Returns ``True`` if an object
      is an iterable other than a string.
      >>> is_collection(object())
      False
      >>> is_collection(range(10))
      True
      >>> is_collection('hello')
      False
      """
      return is_iterable(obj) and not isinstance(obj, basestring)
  
imports: import os
  import math
  import time
  import codecs
  import random
  import socket
  import hashlib
  import itertools
  from collections import Mapping, Sequence, Set, ItemsView
label_desc: Use image node_id 3 for calling a global function with example usage: is_collection(obj) and returns: unknown