def es_base(caracter):
    """

    Str -> Bool

    Ingresa un caracter, se determina si es True o False

    >>> es_base('A')
    True

    >>> es_base('T')
    True

    >>> es_base('C')
    True

    >>> es_base('G')
    True

    >>> es_base('AT')
    Traceback (most recent call last):
    ..
    ValueError: AT no es una base
    >>> es_base('BB')
    Traceback (most recent call last):
    ..
    ValueError: BB no es una base

    >>> es_base('1')
    Traceback (most recent call last):
    ..
    ValueError: 1 no es una base
    >>> es_base('')
    Traceback (most recent call last):
    ..
    ValueError: Ingrese un caracter

    :param caracter: Una letra en mayuscula
    :return: Si es valida o no

    """
    
    letra = caracter.upper()

    if len(letra) == 1 and letra in ('ATCG'):
        return True
    else:
        raise ValueError(caracter + ' no es una base')