首页 > 编程语言 >Python 练习实例6

Python 练习实例6

时间:2023-09-27 11:32:40浏览次数:40  
标签:10 return 数列 Python 练习 fibs fib 实例 那契

题目:斐波那契数列。

程序分析:斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……。

在数学上,费波那契数列是以递归的方法来定义:

F0 = 0     (n=0)
F1 = 1    (n=1)
Fn = F[n-1]+ F[n-2](n=>2)

程序源代码:

方法一

#!/usr/bin/python # -*- coding: UTF-8 -*- def fib(n): a,b = 1,1 for i in range(n-1): a,b = b,a+b return a # 输出了第10个斐波那契数列 print (fib(10))

方法二

#!/usr/bin/python # -*- coding: UTF-8 -*- # 使用递归 def fib(n): if n==1 or n==2: return 1 return fib(n-1)+fib(n-2) # 输出了第10个斐波那契数列 print (fib(10))

以上实例输出了第10个斐波那契数列,结果为:

55

方法三

如果你需要输出指定个数的斐波那契数列,可以使用以下代码:

#!/usr/bin/python # -*- coding: UTF-8 -*- def fib(n): if n == 1: return [1] if n == 2: return [1, 1] fibs = [1, 1] for i in range(2, n): fibs.append(fibs[-1] + fibs[-2]) return fibs # 输出前 10 个斐波那契数列 print (fib(10))

以上程序运行输出结果为:

[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

标签:10,return,数列,Python,练习,fibs,fib,实例,那契
From: https://blog.51cto.com/yangshaoping/7622363

相关文章

  • python numpy所有的数据类型 查看 np.sctypeDict
    >>>np.sctypeDict{'?':<class'numpy.bool_'>,0:<class'numpy.bool_'>,'byte':<class'numpy.int8'>,'b':<class'numpy.int8'>,1:<class'num......
  • Python中的函数注释:参数有冒号,声明后有-> 箭头
    我在查看python的fixture源码时发现fixture的方法定义形式如下:deffixture(fixture_function:Optional[_FixtureFunction]=None,*,scope:"Union[_Scope,Callable[[str,Config],_Scope]]"="function",params:Optional[Iterable[object]]......
  • 接口测试系列文章3——Python接口测试其实只需三步!
    接口测试通用步骤小品中曾说过,大象放冰箱里分三步!分别是:一、把冰箱门打开二、把大象放到冰箱里三、把门关上那么问题来了!通过代码做接口测试分几步呢?答:也分三步!其实无论是手工进行接口测试还是通过代码进行接口测试,三个核心步骤如下:构建接口发送接口校验接口Python编码进行......
  • 进阶Python,从编写Python函数开始!
    好多同学都有这样的疑惑,我学习了python的基础语法,那么具体应用该从哪里入手呢?首先大家要确定,代码必须用起来才能越来越熟练!读懂十行代码不如自己亲自上手遍写一行!代码想熟练最好的方法就是能够通过代码解决工作中的实际问题,例如完成UI自动化测试、接口测试、创建测试数据、构建测试......
  • 测试同学必须熟悉的python模块
    测试同学在进行python的面试过程中,必问的问题是你最常用的python模块有哪些?这些模块解决了你工作中的哪些问题?在这里我把测试同学在实际工作中常用的py模块进行了汇总,本文编写的目的是对各个模块的功能进行概要介绍并没有提供具体api的使用方法,如果大家想要深入了解各个模块api的具......
  • Python高频面试题——装饰器(带大家理解装饰器的本质)
    装饰器概念装饰器本质上是一个python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限验证等场景,装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可......
  • Python高频面试题——生成器(最通俗的讲解)
    生成器定义在Python中,使用了yield的函数被称为生成器(generator)。跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。在调用生成器运行的过程中,每次遇到yield时函数会暂停并保存当前所有的运行信息,返回yield的值,并在......
  • playwright python环境运行报错 ImportError: DLL load failed
    网上建议网上好多文章介绍playwright的环境搭建,用以下两条语句即可完成pipinstallplaywrightplaywrightinstall安装完毕后,尝试执行一段经典的pythondemofromplaywright.sync_apiimportsync_playwrightwithsync_playwright()asp:browser=p.chromium.launch()page......
  • Python高频面试题——迭代器和可迭代对象
     无论是面试测试还是运维涉及到python编码岗位时,迭代器和可迭代对象都是绕不开的一个问题,本文对这两个概念进行重点讲解,本文从什么是迭代讲起,然后介绍迭代器和可迭代对象二者的区别,最后通过for循环和自定义迭代器来加深读者对这两个概念的理解,只要认真阅读完文章,相信一定会帮助到......
  • Python爬虫-爬取百度搜索结果页的网页标题及其真实网址
    共两个依赖的需提前安装的第三方库:requests和bs4库cmd命令行输入安装requests库:pip3install-ihttps://pypi.douban.com/simplerequests安装bs4库:pip3install-ihttps://pypi.douban.com/simplebeautifulsoup4 本微项目源文件下载地址:https://wwuw.lanzouj.com/i1Au51......