2017-11-11 54 views
1

我明白,下面是一個無限循環(直到你跳出來):雖然真VS儘管假

while True: 

那麼,這將是有史以來使用以下需要:

while False: 

或者:

while not True: 

由於while循環僅執行下面的代碼,如果同時(條件): 評估爲布爾真,是正確的假設,下面的「代碼」節目永遠不會執行?:

while False: 
    code 
+2

在'while'循環中有'*'沒有用*且硬編碼的'False'結果。 –

+2

在開發過程中,您可以使用'while False:'來暫時消除一段代碼。我覺得只是將它評論出來更容易。 –

+0

如果使用了這種方法,那麼在該區域前面加上一個註釋說明它爲什麼被阻塞是很好的。 (例如,「代碼被阻止以嘗試其他的東西,離開這裏以便編譯器檢查代碼 - 或準備好時完全刪除」) – Grantly

回答

7

while只有表達式的計算結果爲true value執行循環體。因此,將表達式硬編碼爲False(或任何總是產生False或其他錯誤值的表達式),除了確保循環塊不被執行外沒有其他用處。

+1

測試代碼塊時可能很有用...使用while(false)來阻止某些代碼你可以嘗試另一種方法....它比編寫代碼更好一點,因爲編譯器仍然會驗證代碼(如果這個'功能'是有幫助的......它取決於編碼器,團隊等) – Grantly