code: def asarray(arraylike, strict=True):
      
      if isinstance(arraylike, np.ndarray):
          return arraylike
      elif isinstance(arraylike, list):
          return np.asarray(arraylike, dtype=object)
      elif not isinstance(arraylike, np.ndarray) and isinstance(arraylike, arraylike_types):
          return arraylike.values
      elif hasattr(arraylike, '__array__'):
          return np.asarray(arraylike)
      elif strict:
          raise ValueError('Could not convert %s type to array' % type(arraylike))
      return arraylike
docs: Converts arraylike objects to NumPy ndarray types. Errors if
      object is not arraylike and strict option is enabled.