import pickle


def open_pickle(path: str):
    """
    Open a pickle and return loaded pickle object.
        Parameters:
        -----------
            path: File path to pickle file to be opened.

        Returns:
        --------
            rtype : object
    """
    try:
        with open(path, 'rb') as opened_pickle:
            try:
                return pickle.load(opened_pickle)
            except Exception as pickle_error:
                print(pickle_error)
                raise
    except FileNotFoundError as fnf_error:
        print(fnf_error)
        return dict()
    except IOError as io_err:
        print(io_err)
        raise
    except EOFError as eof_error:
        print(eof_error)
        raise
    except pickle.UnpicklingError as unp_error:
        print(unp_error)
        raise