def convert_to_hexadecimal(bits, padding):
    """
    Converts  bits to a hexadecimal character with padding.

    E.g.
        Converts [False, False, False, True], 0 to "1".
        Converts [True, False, False, False], 2 to "08"

    Args:
        bits: List of boolean values.
        padding: Integer of number of 0 padded places.

    Returns:
        string: Zero padded hexadecimal number.
    """

    bits_as_strings = ["1" if bit else "0" for bit in bits]

    bits_base_2 = int("".join(bits_as_strings), 2)

    zero_padded_eight_digit_hexadecimal_with_prefix = "{0:#0{1}x}".format(bits_base_2, padding + 2)

    zero_padded_eight_digit_hexadecimal_without_prefix = zero_padded_eight_digit_hexadecimal_with_prefix[2:]

    return zero_padded_eight_digit_hexadecimal_without_prefix.upper()