Привет, подскажите в чем отличие в данному случае в синтаксисе, нужно чтобы все работало под Python 2. Вот сам код:
#!/usr/bin/python3
import marisa_trie
prefix_data = {l.split()[-1] : l.strip() for l in open('codes.txt')}
trie = marisa_trie.Trie(prefix_data.keys())
def get_descr(phone):
phone_prefixes = trie.prefixes(phone)
pref = max(phone_prefixes, key=len)
if pref == None: return "Unknown " + phone
return prefix_data[pref]
cur_descr = None
prev_descr = None
output = open('final', 'w')
for line in open('numbers', 'r'):
cur_descr = get_descr(line)
if cur_descr != prev_descr:
output.write(cur_descr)
output.write('\n')
prev_descr = cur_descr
output.write(line)
output.flush()