def add_columns_with_default(event, field_and_default_dict):
    """ Adds a column with the default value to every event where it's not already present

    :param event: A dictionary
    :param field_and_default_dict: A dictionary with keys and default values {field_1: default_for_field_1, field_2: default_for_field_2}
    :return: An altered dictionary

    Examples:

    .. code-block:: python

        # Example #1
        event = {'an existing column': 'some value'}
        event = add_columns_with_default(event, field_and_default_dict={"new column 1": 'my default of 1', "new column two": 2})
        event = {'an existing column': 'some value',
                'new column 1': 'my default of 1',
                'new column two': 2}

        # Example #2
        event = {'an existing column': 'some value'}
        event = add_columns_with_default(event, field_and_default_dict={"mark_for_delete": False})
        event = {'an existing column': 'some value',
                'mark_for_delete': False}

    """

    for k, v in field_and_default_dict.items():
        if k not in event:
            event[k] = v
    return event