In: Computer Science
SIGN_GROUPS = '[ARI,LEO,SAG]-[TAU,VIR,CAP]-[GEM,LIB,AQU]-[PIS,SCO,CAN]'
def get_sign_group(sign):
    '''
    (str) -> int
    Given a three character string representing a star sign, return
    which group (out of 0, 1, 2, or 3) this star sign belongs to.
    Use the SIGN_GROUPS string (already defined for you above) to figure
    out the group.
    i.e. As given by this string '[ARI,LEO,SAG]-[TAU,VIR,CAP]-[GEM,LIB,AQU]-[PIS,SCO,CAN]'
         the signs ARI, LEO and SAG are in group 0, the signs TAU, VIR, CAP are in group 1,
         and so on.
    >>> get_sign_group('ARI')
    0
    >>> get_sign_group('CAN')
    3
    '''
How to do this without using lists?
String slicing
SIGN_GROUPS = '[ARI,LEO,SAG]-[TAU,VIR,CAP]-[GEM,LIB,AQU]-[PIS,SCO,CAN]'
def get_sign_group(sign):
    '''
    (str) -> int
    Given a three character string representing a star sign, return
    which group (out of 0, 1, 2, or 3) this star sign belongs to.
    Use the SIGN_GROUPS string (already defined for you above) to figure
    out the group.
    i.e. As given by this string '[ARI,LEO,SAG]-[TAU,VIR,CAP]-[GEM,LIB,AQU]-[PIS,SCO,CAN]'
         the signs ARI, LEO and SAG are in group 0, the signs TAU, VIR, CAP are in group 1,
         and so on.
    >>> get_sign_group('ARI')
    0
    >>> get_sign_group('CAN')
    3
    '''
    k = 0
    for i in SIGN_GROUPS.split("-"):
        for j in i.split(","):
            if(sign in j):
                return k
        k += 1
    return -1

