2016-04-29 41 views
1

嘗試使用元組打印斐波那契數列時,iPython往往會崩潰。iPython在打印時崩潰斐波那契系列

這是我正在執行的代碼。

n = raw_input("Please enter a number: ") 

a = 0 
b = 1 
while b < n: 
    (b,a) = (a,b+a) 
    print b 

但是,如果我用數字(例如20,100,1000)替換n,它會平穩運行。我也嘗試在Pycharm中運行這個代碼,結果類似。 Pycharm運行的代碼,用所產生的數字巨大的數據流,並警告其內容如下:

太多輸出處理

是什麼原因導致這個崩潰?

回答

1

您忘記將字符串nraw_input變爲一個整數。

由於在這種情況下通過類型名稱進行比較,因此b < n將始終爲True

使用n = int(raw_input("Please enter a number: "))

+0

謝謝,我不知道raw_input需要被強制轉換爲整數類型。 – user2762934

0

的raw_input由於的返回值是海峽,你應該嘗試 n = int(raw_input("Please enter a number: "))代替。