文字列に文字が表示される回数を数えようとしていますので、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+連結を必要としませんか?
を私はアルファベット順にそれを維持したいが、私は 'で、事前にそれを尋ねてみたので、現在記載されたエラーレート変数は何もカウントされません。 wとyを得て、私が望む結果を得ました。 – bittercold
私たちはコメントにdownvoteできないのは残念です。 @ewczの提案は良くないので、ループの中で 's.count'を使うのは無駄です。 – wim
@wim fair enough;) 'sum([1ならば1、cならerrorLetters else 0ならc])' – ewcz