import re pattern = re.compile('mul\\(([0-9]{1,3}),([0-9]{1,3})\\)') with open("input") as f: data = f.read() result = 0 for match in pattern.findall(data): result += int(match[0]) * int(match[1]) print(result)