Skip to content

kedro.utils

kedro.utils

This module provides a set of helper functions being used across different components of kedro package.

Name Type Description
load_obj Function Extract an object from a given path.

kedro.utils.load_obj

load_obj(obj_path, default_obj_path='')

Extract an object from a given path.

Parameters:

  • obj_path (str) –

    Path to an object to be extracted, including the object name.

  • default_obj_path (str, default: '' ) –

    Default object path.

Returns:

  • Any

    Extracted object.

Raises:

  • AttributeError

    When the object does not have the given named attribute.

Source code in kedro/utils.py
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
def load_obj(obj_path: str, default_obj_path: str = "") -> Any:
    """Extract an object from a given path.

    Args:
        obj_path: Path to an object to be extracted, including the object name.
        default_obj_path: Default object path.

    Returns:
        Extracted object.

    Raises:
        AttributeError: When the object does not have the given named attribute.

    """
    obj_path_list = obj_path.rsplit(".", 1)
    obj_path = obj_path_list.pop(0) if len(obj_path_list) > 1 else default_obj_path
    obj_name = obj_path_list[0]
    module_obj = importlib.import_module(obj_path)
    return getattr(module_obj, obj_name)