OK, here's a revised answer that assumes there's one file containing names and abbreviations as shown at the beginning of this.
Essentially what it does is make a large lookup table that maps any abbreviation in the file plus the name itself in lowercase to the name at the beginning of each line.
lookup = {}
with open("champions.txt") as f:
for line in f:
line = line.rstrip().split('-', 1)
if not line: continue # skip any blank lines
name = line[0].strip()
lookup[name.lower()] = name
if len(line) == 2: # any alternative names given?
for item in line[1].split(','):
lookup[item.strip()] = name
print 'lookup table:'
for alt_name, real_name in sorted(lookup.items()):
print '{}: {}'.format(alt_name, real_name)
print
while True:
print "which champ (Enter to quit): " # ask user for input
value = raw_input().lower() # get the input and make it lowercase
if not value: break
real_name = lookup.get(value)
if real_name:
print 'found:', value, '-->', real_name
else:
print 'error: no match for', value