函数搞定的 Fibonacci 数列,写起来清爽又好懂,真是练手的好选择。python 的函数用来做递归计算,代码短小精悍。新手练习逻辑思维、老手热热手都挺合适。递归调用是重点,不过要小心栈溢出,数字大了建议用循环或者记忆化递归。

简单例子像这样:

def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n-1) + fibonacci(n-2)

print(fibonacci(10))

嗯,代码一看就懂,输出结果也是整整齐齐。如果你想进阶,可以试试优化方法,比如加上缓存或改成迭代方式。

顺带一提,Python 的 reversed()也挺有意思的,尤其列表反转的时候用起来比较方便,配合函数写起来还挺优雅。你感兴趣可以顺手看看这个:

Python 内置函数 reversed()详细解析

另外像Python 魔法学院: 解锁自定义函数和过程也挺不错,对函数理解再深一点。

如果你想对函数结构、调用优化更有感觉,推荐你看看Spark Python API 函数调用技巧,不过内容稍微进阶一点。

写完建议你多测几个边界值,比如fibonacci(0)fibonacci(1),还有输入负数的情况,代码健壮点,用起来更安心。