input: Write a python function to generate Fibonacci numbers less than a given number n.
  assert fibonacci(5) == [0, 1, 1, 2, 3]
  assert fibonacci(10) == [0, 1, 1, 2, 3, 5, 8]
  assert fibonacci(1) == [0]
  assert fibonacci(0) == [0]
output: def fibonacci(n):
      if n == 0:
          return [0]
      fib_list = [0, 1]
      while True:
          next_val = fib_list[-1] + fib_list[-2]
          if next_val >= n:
              break
          fib_list.append(next_val)
      return fib_list[:-1] if n == 1 else fib_list