

I did run your code as-is in an ipython REPL to check. These were the results:
REPL session
# With unmodified `main` function & `import string` not shown
In [4]: with open("inputs/day13.txt", "r") as f:
...: input_data = f.read().strip().replace(',', '').split('\n\n')
...:
In [5]: part_one, part_two = main(input_data)
In [6]: part_one
Out[6]: 39748
In [7]: part_two
Out[7]: 74926346266863
# Then I modified the function to check if x is fractional
In [8]: def main(input_data):
...: part1_total_cost = 0
...: part2_total_cost = 0
...: for machine in input_data:
...: Ax,Ay,Bx,By,Px,Py = [ int(l[2:]) for l in machine.split() if l[-1] in string.digits ]
...: y,r = divmod((Ay * Px - Ax * Py), (Ay * Bx - Ax * By))
...: if r == 0:
...: x = (Px - Bx * y) / Ax
...: if x % 1 == 0:
...: part1_total_cost += 3*x + y
...: y,r = divmod((Ay * (Px+10000000000000) - Ax * (Py+10000000000000)), (Ay * Bx - Ax * By))
...: if r == 0:
...: x = ((Px+10000000000000) - Bx * y) / Ax
...: if x % 1 == 0:
...: part2_total_cost += 3*x + y
...:
...: return part1_total_cost,part2_total_cost
...:
In [9]: part_one, part_two = main(input_data)
In [10]: part_one
Out[10]: 39748.0
In [11]: part_two
Out[11]: 74478585072604.0 # Correct answer for pt 2 of my input
If you’re curious to check against my puzzle input, it’s here
Thank you again for the back & forth, and for sharing your solution!
Ooh that is tricky of them. Good catch!