簡體   English   中英

將輸出與列表進行比較

[英]Comparing output to a list

我想以斐波那契數列公式為例,運行它並將輸出與一個列表進行比較。 但是找不到如何將輸出保存到列表或直接將輸出與列表進行比較。

Python 新手,如果我錯過了一些簡單和/或明顯的內容,我深表歉意。

讓我們以斐波那契數列的例子為例,它的實現非常簡單。

def fibonacci(n):
  if n == 0: return 0
  elif n == 1: return 1
  else: return fibonacci(n-1) + fibonacci(n-2)

(請注意,這遠非有效)

假設我想測試前 10 個結果是否與實際序列匹配。

首先,讓我們創建一個預期結果列表。

fibonacci_sequence = [0, 1, 1, 2, 3, 5, 8, 13, 21, 33]

然后,讓我們生成一個包含計算結果的列表。

computed_values = [fibonacci(n) for n in range(10)]

(要更好地理解這行代碼,請參閱列表理解

最后,讓我們比較一下這兩個列表。

print(computed_values == fibonacci_sequence)

這將立即比較兩個列表。

另一種選擇是一次驗證一個結果。

for n in range(10):
  print(fibonacci(n) == computed_values[n])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM