2014-03-24 90 views
0

我需要在python中創建一個列表,其中最初將所有從0到N的數字列爲true。我必須使用 def shake(alist):試圖在python中創建一個布爾列表

我嘗試了一些其他的代碼,但我被告知我沒有創建一個布爾列表,其中的一切都是真實的,我剛剛計算出數字,結果出錯了。我應該創建這個列表,其中的值都是真實的,然後將它設置在我設置的所有整數值都是假的,這些是素數的倍數,然後打印剩餘真值的列表。我被困在如何開始,因爲我以前沒有見過這樣的事情。任何幫助在正確的方向將不勝感激。

+2

您應該向我們展示您的錯誤代碼。 – hivert

回答

1

對於初學者來說,創建與真實值列表,你可以使用列表理解:

lst = [True for _ in range(N)] 

或使用的事實,即所有非零整數評估爲True布爾方面:

lst = map(bool, range(1, N+1)) 

稍後您可以在此列表上進行操作。要將某些值更改爲False(請記住,第一個索引是0;)。

如果再次卡住,請顯示一些代碼,以及輸入/預期輸出。祝你好運。

2
>>> N = 10 
>>> [True] * N 
[True, True, True, True, True, True, True, True, True, True]