import itertools receipt_totals = [ 7.73, 56.85, 7.73, 30.80, 6.60, 16.87, 23.50, 4.77, 2.78, 19.81, 40.89, 2.90, 5.76, 18.58, 4.66, 2.99, 1.99, 7.47, 13.00, ] for r in range(1, len(receipt_totals)): r_combos = [ x for x in itertools.combinations(receipt_totals, r) if sum(x) == 171.76 ] if r_combos: print("combos with " + str(r) + " receipts equaling $171.76: ") for combo in r_combos: print(combo)