嗨我想知道是否有可能在代碼的while比較部分中分配一個值。在一段時間比較表達式中分配值
下面是代碼的例子目前
startIndex = find(target, key, startIndex)
while(startIndex != -1):
matchesFound += 1
startIndex = find(target, key, startIndex + 1)
return matchesFound
我想要做的是移動的startIndex =發現(目標,關鍵,則startIndex)進入,而比較expresion所以它會是這個樣子
while((startIndex = find(target, key, startIndex)) != -1):
matchesFound += 1
startIndex + 1
return matchesFound
如果不是,那麼更好的重構是什麼?
感謝
編輯 我通過MIT開放課件6.00工作之前,我嘗試了著名6.001模塊
答案仍然沒有。重複:http://stackoverflow.com/questions/1663995/python-variable-assignment-and-if-statement – 2010-01-14 01:04:11
這兩個都是一樣的嗎?在第一種情況下,你首先用'startIndex'調用'find',而在後者中用'startIndex + 1'調用它。 – 2010-01-14 01:13:25
是的,你是對的彼得我已經糾正它 – Sam 2010-01-14 01:29:25