code: def get_func_name(func):
      
      func_name = getattr(func, '__name__', func.__class__.__name__)
      module_name = func.__module__
  
      if module_name is not None:
          module_name = func.__module__
          return '{}.{}'.format(module_name, func_name)
  
      return func_name
docs: Return a name which includes the module name and function name.