Вы можете видеть в ваших операторах if, когда n == 0 return является пустым списком, для n == 1 возвращает один элемент в списке, а также для n == 2 возвращает два элемента в списке.
Для этого вы можете использовать один оператор if, как показано ниже:
if 0 <= n < 3:
return list(signature[:n])
И вот ваш полный код для вашей проблемы.
def tribonacci(signature, n):
#your code here
f = 0
if 0 <= n < 3:
return list(signature[:n])
while len(signature) != n:
i = signature[0 + f] + signature[1 + f] + signature[2 + f]
signature.append(i)
f += 1
return signature