Не работает str.replace()

Проблема в том что replace возвращает 4 + 4 is &{4*2}, 5 + 5 is &{30-20} вместо 4 + 4 is 4*2, 5 + 5 is 30-20. В чем может быть ошибка (или не ошибка)?

Я хочу чтобы replace возвращал 4 + 4 is 4*2, 5 + 5 is 30-20.
Заранее спасибо!

Вот код:

import re
code = '4 + 4 is &{4*2}, 5 + 5 is &{30-20}'

searchAcB = [i.start() for i in re.finditer('&{', code)]
searchCb  = [i.start() for i in re.finditer('}', code)]
res = []
for i in range(len(searchAcB)):
  res.append(
    code[searchAcB[i]+2:searchCb[i]]
  );
  code = code.replace(
    code[searchAcB[i]+2:searchCb[i]], res[i]
  );

print(code)

Ответы (0 шт):