用 Python 生成斐波那契数列

PythonPythonBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

斐波那契数列是一个数字序列,其中每个数字都是前两个数字之和。它从0和1开始,下一个数字是前两个数字的和。在这个挑战中,你将编写一个函数,生成一个包含直到第n项的斐波那契数列的列表。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python/BasicConceptsGroup -.-> python/comments("Comments") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ControlFlowGroup -.-> python/while_loops("While Loops") python/DataStructuresGroup -.-> python/lists("Lists") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") subgraph Lab Skills python/comments -.-> lab-13630{{"用 Python 生成斐波那契数列"}} python/conditional_statements -.-> lab-13630{{"用 Python 生成斐波那契数列"}} python/while_loops -.-> lab-13630{{"用 Python 生成斐波那契数列"}} python/lists -.-> lab-13630{{"用 Python 生成斐波那契数列"}} python/function_definition -.-> lab-13630{{"用 Python 生成斐波那契数列"}} python/build_in_functions -.-> lab-13630{{"用 Python 生成斐波那契数列"}} end

斐波那契数列

编写一个名为 fibonacci(n) 的函数,该函数接受一个整数 n 作为参数,并返回一个包含直到第 n 项的斐波那契数列的列表。

要解决这个问题,你可以按照以下步骤进行:

  1. 创建一个名为 sequence 的空列表。
  2. 如果 n 小于或等于0,则将0添加到 sequence 列表中并返回该列表。
  3. 将0和1添加到 sequence 列表中。
  4. 使用 while 循环将 sequence 列表中最后两个数字的和添加到列表末尾,直到列表长度达到 n
  5. 返回 sequence 列表。
def fibonacci(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
fibonacci(7) ## [0, 1, 1, 2, 3, 5, 8, 13]

总结

在这个挑战中,你已经学会了如何生成一个包含直到第n项的斐波那契数列的列表。你还学会了如何使用while循环将列表中最后两个数字的和添加到列表末尾。