code: def terms(names, **kwargs):
      r"""Return list of terms with names given by `names`
  
      This is just a convenience in defining a set of terms, and is the
      equivalent of ``sympy.symbols`` for defining symbols in sympy.
  
      We enforce the sympy 0.7.0 behavior of returning symbol "abc" from input
      "abc", rthan than 3 symbols "a", "b", "c".
  
      Parameters
      ----------
      names : str or sequence of str
         If a single str, can specify multiple ``Term``s with string
         containing space or ',' as separator.
      \*\*kwargs : keyword arguments
         keyword arguments as for ``sympy.symbols``
  
      Returns
      -------
      ts : ``Term`` or tuple
         ``Term`` instance or list of ``Term`` instance objects named from `names`
  
      Examples
      --------
      >>> terms(('a', 'b', 'c'))
      (a, b, c)
      >>> terms('a, b, c')
      (a, b, c)
      >>> terms('abc')
      abc
      """
      if "each_char" in kwargs:
          raise TypeError(
              'deprecated "each_char" kwarg removed in sympy>0.7.3'
          )
      syms = sympy.symbols(names, **kwargs)
      try:
          len(syms)
      except TypeError:
          return Term(syms.name)
      return tuple(Term(s.name) for s in syms)
  
imports: import itertools
  import warnings
  from string import ascii_letters, digits
  import numpy
  import sympy
  from scipy.linalg import pinv
  from sympy import Dummy, default_sort_key
  from sympy.utilities.lambdify import implemented_function, lambdify
  from nipy.algorithms.utils.matrices import full_rank, matrix_rank
  from nipy.utils import VisibleDeprecationWarning, _NoValue
label_desc: Use image node_id 4 for calling a global function with example usage: terms(names) and returns: tuple, Term