The author wants leftovers to be evenly distributed. For example for n=15 and g=4 he wants [5,5,5].
I think his very first 3 liner is the most readable version. If we're microoptimizing, his comprehension version also has a lot of extra divisions. I would write something like this instead:
q1, r1 = divmod(n, g)
q2, r2 = divmod(r1, q1)
print(n, [g + q2 + 1] * r2 + [g + q2] * (q1 - r2))