斐波那契數(shù)列是一個非常著名的數(shù)列,第一項和第二項均為1,之后每一項都是它前面相鄰兩項的和。例如,這個序列的前十項是:
1, 1, 2, 3, 5, 8, 13, 21, 34, 55
用Python編寫斐波那契數(shù)列很簡單,我們只需要使用循環(huán)和一個列表:
# 計算斐波那契數(shù)列前N個數(shù) def fibonacci(N): fib = [1, 1] for i in range(2, N): fib.append(fib[i-1] + fib[i-2]) return fib # 打印前10個斐波那契數(shù) print(fibonacci(10))
運行這段代碼會輸出:
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
如果我們只想得到其中某一項,我們可以修改代碼:
# 計算斐波那契數(shù)列的第N項 def fibonacci(N): fib = [1, 1] for i in range(2, N): fib.append(fib[i-1] + fib[i-2]) return fib[N-1] # 打印斐波那契數(shù)列的第5項 print(fibonacci(5))
運行這段代碼會輸出:
5
如此簡單的代碼,卻可以生成如此著名的數(shù)列。斐波那契數(shù)列不僅是計算機科學中的經(jīng)典問題,還涉及到生物學、金融學和統(tǒng)計學等許多領域。
上一篇python 視頻換臉