アイソグラムは、連続するかまたは連続しない繰り返し文字がない単語です。文字のみを含む文字列がアイソグラムかどうかを判断する関数を実装します。空の文字列がアイソグラムであると仮定します。大文字小文字を無視します。Python関数をチェックしてコードワードからアイソグラムを決定する
is_isogram("Dermatoglyphics") == true
is_isogram("aba") == false
is_isogram("moOse") == false # -- ignore letter case
は、ここに私のコードです:
def is_isogram(string):
string = string.lower()
for char in string:
if string.count(char) > 1:
return False
else:
return True
を、私はそれが失敗したテストコードTest.assert_equals(is_isogram("moOse"), False, "same chars may not be same case")
を実行しようとしたが、私が考えたとき、私は小文字にすべてを変換しました。助けてもらえますか?
あなたの関数が返ってくるときを考えてみましょう。 '' moose''にはいくつの '' m''がありますか? – jonrsharpe
あなたのコードは最初の文字だけを試します。問題が2番目のものにあるのはmooseです。 – Whitefret
"for"を使うと、文字列のすべての文字をチェックすると思いますか? –