file = open("in.txt", "r") lns = file.readlines() def p1(): depth = 0 horizontal = 0 for i in range(len(lns)): d = lns[i].split()[0] v = int(lns[i].split()[1]) if d == 'down': depth += v elif d == 'up': depth -= v elif d == 'forward': horizontal += v return {"depth": depth, "horizontal": horizontal} def p2(): depth = 0 horizontal = 0 aim = 0 for ln in lns: d = ln.split()[0] v = int(ln.split()[1]) if d == 'down': aim += v elif d == 'up': aim -= v elif d == 'forward': horizontal += v depth += aim * v return {"depth": depth, "horizontal": horizontal} # output lines # one = p1() # two = p2() # d1 = one['depth'] # h1 = one['horizontal'] # d2 = two['depth'] # h2 = two['horizontal'] # print(f"part 1: {d1 * h1}") # print(f"part 2: {d2 * h2}")