code: def whosmat(file_name, appendmat=True, **kwargs):
      """
      List variables inside a MATLAB file.
  
      Parameters
      ----------
      %(file_arg)s
      %(append_arg)s
      %(load_args)s
      %(struct_arg)s
  
      Returns
      -------
      variables : list of tuples
          A list of tuples, where each tuple holds the matrix name (a string),
          its shape (tuple of ints), and its data class (a string).
          Possible data classes are: int8, uint8, int16, uint16, int32, uint32,
          int64, uint64, single, double, cell, struct, object, char, sparse,
          function, opaque, logical, unknown.
  
      Notes
      -----
      v4 (Level 1.0), v6 and v7 to 7.2 matfiles are supported.
  
      You will need an HDF5 python library to read matlab 7.3 format mat
      files.  Because scipy does not supply one, we do not implement the
      HDF5 / 7.3 interface here.
  
      .. versionadded:: 0.12.0
  
      """
      ML, file_opened = mat_reader_factory(file_name, **kwargs)
      variables = ML.list_variables()
      if file_opened:
          ML.mat_stream.close()
      return variables
  
file_path: catboost/contrib/python/scipy/py2/scipy/io/matlab/mio.py
imports: from __future__ import division, print_function, absolute_import
  from scipy._lib.six import string_types
  from .miobase import get_matfile_version, docfiller
  from .mio4 import MatFile4Reader, MatFile4Writer
  from .mio5 import MatFile5Reader, MatFile5Writer
label_desc: Use image node_id 5 for calling a global function with example usage: whosmat(file_name, appendmat) and returns: variables