def dict_query(*, dictionary: dict, path: str):
    """
        Perform a 'dot notation' query on a dictionary

        args:
            dictionary (dict): The dictionary to query
            path (string): The dot notation query path

        return:
            value: Returns the value at the specified path

    """
    keys = path.split('.')
    value = None
    for key in keys:
        if value:
            if isinstance(value, list):
                if not key.isdigit():
                    return None
                value = list(value)[int(key)]
            else:
                value = value.get(key, None)
        else:
            value = dictionary.get(key, None)
        if not value:
            break
    return value
