История изменений
Исправление AntonI, (текущая версия) :
А как еще? Если шаблон строки приходит из переменной? Он не то что такой нужен, он такой есть в данном случае;-)
Я наверное определился, как то так будет
el = ... # обрабатываемый элемент входной последовательности
tmp_scope = dict(scope)
while 1:
try: dst_seq.append(el.format(**tmp_scope)); break
except KeyError as ex:
key = ex.args[0]
try: tmp_scope[key] = eval(key, _math_dict, scope)
except: tmp_scope[key] = '{%s}'%key
На f-строках такое выглядит значительно кривее…
Исходная версия AntonI, :
А как еще? Если шаблон строки приходит из переменной? Он не то что такой нужен, он такой есть в данном случае;-)
Я наверное определился, как то так будет
el = ... # обрабатываемый элемент входной последовательности
tmp_scope = dict(scope)
while 1:
try: dst_seq.append(el.format(**tmp_scope)); break
except KeyError as ex:
key = ex.args[0]
try: tmp_scope[key] = eval(key, _math_dict, scope)
except: tmp_scope[key] = '{%s}'%key