I dunno, how efficient is this?
Compared to base=10^places, multiply, truncate, divide? Horriby inefficient.
%timeit round(12335423552.33, -6)
%timeit int(12335423552.33 / 1_000_000.0) * 1_000_000.0
500 ns ± 3.88 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
219 ns ± 1.1 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)