code: def is_array_like(obj, string_is_array=False, tuple_is_array=True):
      result = hasattr(obj, "__len__") and hasattr(obj, "__getitem__")
      if (
          result
          and not string_is_array
          and isinstance(obj, (str, abc.ByteString))
      ):
          result = False
      if result and not tuple_is_array and isinstance(obj, tuple):
          result = False
      return result
  
imports: import numpy
  import math
  import time
  import sys
  import os
  import inspect
  import re
  import uuid
  from collections import abc
  import textwrap
  from functools import wraps
  import gc
  import timeit
label_desc: Use image node_id 9 for calling a global function with example usage: is_array_like(obj, string_is_array, tuple_is_array) and returns: result