我有一個if,elif和else語句塊。 if語句比較列表中的項目,然後對找到的項目進行處理。 elif和其他對列表沒有做任何事情,所以我沒有看到把它全部放在for循環中的意思。'For'循環'if'(繼續'elif')語句
我得到了課程的第一線錯誤,但有一個Python化的方式來得到什麼我正在尋找,而無需調整自己的整個代碼?
我有一個if,elif和else語句塊。 if語句比較列表中的項目,然後對找到的項目進行處理。 elif和其他對列表沒有做任何事情,所以我沒有看到把它全部放在for循環中的意思。'For'循環'if'(繼續'elif')語句
我得到了課程的第一線錯誤,但有一個Python化的方式來得到什麼我正在尋找,而無需調整自己的整個代碼?
如果你只是想測試一個項目是否是列表中的,一個簡單的方法來做到這一點是:
if item in list:
do something
我已經知道列表中的項目將會是str類型,只有當該項目在更大的str中找到時,我才需要對該項目做些什麼 – rasonage
for myItem in myList :
if myItem in myText :
doSomething using myText and myItem
elif otherThing1:
doStuff
elif otherThing2:
doOther stuff
else:
forget this, go have a drink
我剛開始時,問題是elifs,否則會執行多次,而他們正在循環列表中,我只希望他們執行一次後,整個列表循環和沒有做。 – rasonage
你的話:
「我想看看strs列表裏面的str是否在更大的str(myText)裏面,然後用myItem和myText來做。我只希望在if語句遍歷myList的所有項後執行「else」位並沒有發現任何東西。「
count = 0
for myItem in mylist:
if myItem in myText:
count += 1
do something with myItem and myText
if count == 0:
do what you want to do when if finds nothing
我不太確定你想要做什麼elifs?您正在查找較大字符串中的子字符串。它將評估爲真或假。爲什麼你需要4個邏輯語句?
你必須認識到,如果你把你的if/else語句在一個循環內,每一次循環運行時,它會無論是做什麼的計算結果爲真或假
目前還不清楚你想要什麼在縮進塊內使用'myItem'。在上面的例子中,'myItem'是生成器表達式的一部分,並且在該表達式之外沒有任何含義(或值)。 –
如果'myText'的類型是'str',那麼myItem中myItem的myItem最好返回一個字符串......它沒有,因爲它返回一個生成器。你到底在找什麼? – TigerhawkT3
您能描述一下您實際上想要做什麼,而不是嘗試[解決疑難解答](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)? – TigerhawkT3