Py学习  »  Python

Python斐波那契数列与else语句

Python初级入门到精通 • 6 月前 • 218 次点击  


斐波那契数列


斐波那契数列(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)

一、在Python中实现斐波那契数列

1、普通方法:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

deffib(n):
a,b=1, 1
foriinrange(n-1):
a,b=b,a+b
returna

# 输出了第10个斐波那契数列

printfib(10)

2、使用递归:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

# 使用递归
deffib(n):
ifn ==1orn==2:
return1
returnfib(n-1)+fib(n-2)


# 输出了第10个斐波那契数列

printfib(10)

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

二、输出指定个数的斐波那契数列

#!/usr/bin/python
# -*- coding: UTF-8 -*-

def fib(n):
ifn==1:
return[1]
ifn==2:
return[1,1]
fibs=[1,1]
foriinrange(2,n):
fibs.append(fibs[ -1]+fibs[-2])
returnfibs

# 输出前 10 个斐波那契数列
printfib(10)

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

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

else语句

else语句紧跟if语句,并且包含当if语句为false时,调用else代码。

与if语句一样,块内的代码应该缩进。

x=4

if x==5:

    print("Yes")

else:

    print("NO")


结果:

>>>

NO


else嵌套

可以通过链式if语句和其他语句来确定一系列可能性中的哪一个选项是正确的。例如:

num=7

if num==5:

    print("number is 5")

elif num==11:

    print("numbei is 11")

elif num==7:

    print("number is 7")

else:

    print("number isn't 5,11 or 7")


结果:

>>>

number is 7




if(1==1)and(2+2>3):

    print("True")

else:

    print( "false")

结果:

>>>

True



关注公众号,每天可以领红包



Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/188515