我想計算字符顯示在字符串中的次數,所以我使用的count()函數工作正常,但是使用多個count()函數似乎很乏味,因爲我'米試圖數10個以上的字母。Python計數多個子字符串
def printer_error(s):
#errorLetters = ('r','s','t','u','v','w','x','y','z')
errorRate = s.count('o') + s.count('p') + s.count('q')
print(errorRate)
return
printer_error('aaaxbbbbyyhwawiwjjjwwm')
我的第一次嘗試是s.count(errorLetters),但因爲count()函數不能使用元組或列表而失敗。
當前的代碼給了我想要的結果,但我仍然需要連接其他那些在errorLetters變量中註釋掉的字母,還有另一種方法可以做到這一點,而不需要進行20+連接嗎?
因爲我想繼續保持目前按字母順序列出的ERRORRATE變量不指望什麼,但我發短信與事前「 w'和'y',並得到我想要的結果。 – bittercold
這是一個恥辱,我們不能downvote評論。 @ewcz建議不好,在循環內部使用's.count'是無用的。 – wim
@wim fair enough;)'sum([1 if c in errorLetters else 0 for c in s])' – ewcz