Python program for fibonacci sequence using a recursive function
Since other answers have focused on the code quality itself, I'll focus on performance.

Recursive Fibonacci by itself is \$O(2^n)\$ time.

Memoized fibonacci is linear time (check out functools.lru_cache for a quick and easy one). This is because fibonacci only sees a linear number of inputs, but each one gets seen many times, so caching old input/output pairs helps a lot.

Golden-ratio based solutions are approximately \$O(\log(n))\$, using \$\text{Fib}(n) = \frac{\phi^n - (1 - \phi)^n}{\sqrt 5}\$, where \$\phi\$ is the golden number. Note that without arbitrary precision numbers, this approach becomes inaccurate at large values of n. With increased precision, note that the cost of a multiplication increases as well, making the whole process a bit slower than log(n).