def only1(l):
    """
    Checks if the list 'l' of booleans has one and only one True value
    :param l: list of booleans
    :return: True if list has one and only one True value, False otherwise
    """
    true_found = False
    for v in l:
        if v:
            if true_found:
                return False
            else:
                true_found = True
    return true_found