constellation = {}
types = {}
for hostname in hosts_file:
hostname = hostname.strip()
host_site = hostname.split('-', 1)
if len(host_site) != 2:
continue
host, site = host_site
type_num_pattern = re.compile(r"([A-Za-z_]+)([0-9]+)")
type_num = type_num_pattern.match(host)
type, num = type_num.groups()
#print site, type, num
if not type in types:
types[type] = []
types[type].append(num)
if not site in constellation:
constellation[site] = []
constellation[site].append(types)
print constellation
print types