Mutation Versus Rebinding in One Call Chain

def mutate(lst):
    lst.append(4)

def rebind(lst):
    lst = [9, 9, 9]

nums = [1, 2, 3]
mutate(nums)
rebind(nums)
print(nums)

What does the final print(nums) output?

A

[1, 2, 3, 4, 9, 9, 9]

B

[1, 2, 3, 4]

C

[9, 9, 9]

D

[1, 2, 3]