You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么我写的Python斐波那契数列算法无法按预期正常运行?

问题排查与修正方案
  • 第一个问题是语法缩进错误:原代码中return sequence 没有缩进至函数内部,属于全局作用域的代码,运行时会直接抛出语法错误,无法正常执行。修正方式是将这行缩进4个空格,和函数内的其他代码对齐。
  • 第二个问题是输出范围不匹配:你当前的代码直接打印完整的斐波那契数列列表,没有截取第5到15位的部分。由于你约定第5位的值为3,对应Python列表的索引为4(列表从0开始计数),第15位对应索引为14,因此需要对生成的列表做切片处理。

修正后的完整代码

def fibonacci_nums(n):
    if n <= 0:
        return [0]
    sequence = [0, 1]
    while len(sequence) <= n:
        next_value = sequence[len(sequence) - 1] + sequence[len(sequence) - 2]
        sequence.append(next_value)
    return sequence

# 生成到第15位对应的序列,切片取第5到15位
fib_list = fibonacci_nums(15)
print("第5位到第15位的斐波那契数:")
print(fib_list[4:15])

运行结果

第5位到第15位的斐波那契数:
[3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377]

内容的提问来源于stack exchange,提问作者Jellyfish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 09:27:05