Using recursion and walrus operator:
def prime_factors(n): for i in range(2, int(n ** 0.5) + 1): if (q_r := divmod(n, i))[1] == 0: return [i] + factor_list(q_r[0]) return [n]
Using recursion and walrus operator:
def prime_factors(n): for i in range(2, int(n ** 0.5) + 1): if (q_r := divmod(n, i))[1] == 0: return [i] + factor_list(q_r[0]) return [n]