classSolution: defevaluate(self, s: str, knowledge: List[List[str]]) -> str: knowledge = {x[0]: x[1] for x in knowledge} n = len(s) i = 0 result = '' while i < n: if s[i] == '(': key = '' i += 1 while s[i] != ')': key += s[i] i += 1 if key in knowledge: result += knowledge[key] else: result += '?' else: result += s[i] i += 1 return result