code: def has_ipython(version="3.0"):
      """Function that checks the presence of IPython"""
      # typecast version to a string, in case an integer is given
      version = str(version)
  
      try:
          import IPython  # noqa
      except Exception:
          return False, "IPython library not found"
      else:
          if Version(IPython.__version__) >= Version(version):
              return True, "IPython present"
          else:
              message = (
                  "current IPython version: (%s) is "
                  "older than expected version: (%s)"
              ) % (IPython.__version__, version)
  
              return False, message
  
imports: from __future__ import print_function
  import numpy
  import sys
  import os
  import inspect
  import gc
  import pytest
  import functools
  from packaging.version import Version
  from ..util.check_environment import has_backend
label_desc: Use image node_id 21 for calling a global function with example usage: has_ipython(version) and returns: False,  str, True,  str, False,  message