Numpy攻略:Numpy常用函数之斐波那契数列

NumPy 是一个 Python 的第三方库,代表 “Numeric Python”,主要用于数学/科学计算。
它是一个由多维数组对象和用于处理数组的例程集合组成的库。

1.sqrt函数:计算平方根
示例:黄金分割比的计算
代码段如下:

import numpy
#使用sqrt函数计算5的平方根
phi=(1+numpy.sqrt(5))/2
print(phi)

运行结果:
1.618033988749895
2.log函数:计算以e为底的对数
示例:确定小于四百万项的最大索引值
代码段如下:

 import numpy
    #使用sqrt函数计算5的平方根
    phi=(1+numpy.sqrt(5))/2
    #使用log函数,把对数的底转换一下
    n=numpy.log(4*10**6*numpy.sqrt(5)+0.5)/numpy.log(phi)
    print(n)

运行结果:33.26294803586825
3.arange函数:生成一个指定范围的数组

#创建一个从1到n的数组
n=numpy.arange(1,n)

4.计算斐波那契数列

fib=(phi**n-(-1/phi)**n)/numpy.sqrt(5)
print("First 9 Fibonacci Numbers",fib[:9])

运行结果:First 9 Fibonacci Numbers [ 1. 1. 2. 3. 5. 8. 13. 21. 34.]
5.sum函数:求和

故完整的代码如下:
import numpy
#使用sqrt函数计算5的平方根
phi=(1+numpy.sqrt(5))/2
#使用log函数,把对数的底转换一下
n=numpy.log(4*10**6*numpy.sqrt(5)+0.5)/numpy.log(phi)
print(n)
#创建一个从1到n的数组
n=numpy.arange(1,n)
print(n)
#计算斐波那契数列
fib=(phi**n-(-1/phi)**n)/numpy.sqrt(5)
print("First 9 Fibonacci Numbers",fib[:9])
#转化为整数:astype把数据转化为指定的类型
fib=fib.astype(int)
print("Integers",fib)
#选出取值为偶数的项
eventerms=fib[fib%2==0]
print(eventerms)
#对选出的项求和
print(eventerms.sum())

猜你喜欢

转载自blog.csdn.net/JiangCaifu/article/details/83621686