Malssistra @ Malssistra @programming.dev Posts 0Comments 1Joined 1 yr. ago
Malssistra @ Malssistra @programming.dev
Posts
0
Comments
1
Joined
1 yr. ago
I had some trouble getting Part 2 to work, until I realized that there could be overlap ( blbleightwoqsqs -> 82). ::: spoiler spoiler
Python
import re def puzzle_one(): result_sum = 0 with open("inputs/day_01", "r", encoding="utf_8") as input_file: for line in input_file: number_list = [char for char in line if char.isnumeric()] number = int(number_list[0] + number_list[-1]) result_sum += number return result_sum def puzzle_two(): regex = r"(?=(zero|one|two|three|four|five|six|seven|eight|nine|[0-9]))" number_dict = { "zero": "0", "one": "1", "two": "2", "three": "3", "four": "4", "five": "5", "six": "6", "seven": "7", "eight": "8", "nine": "9", } result_sum = 0 with open("inputs/day_01", "r", encoding="utf_8") as input_file: for line in input_file: number_list = [ number_dict[num] if num in number_dict else num for num in re.findall(regex, line) ] number = int(number_list[0] + number_list[-1]) result_sum += number return result_sum
::: I still have a hard time understanding regex, but I think it's getting there.