私は以下の練習をしています: 2つの単語は、一方の文字を並べ替えてもう一方の単語を綴ることができます。 2つの文字列を取り、アナグラムの場合はTrueを返すis_anagramという関数を記述します。whileループでアナグラムを確認するには
私は関数を開発しましたが、正しく機能していないため、その理由がわかりません。誰か私が間違っていることを教えてもらえますか?どうもありがとうございました。
def isa(s,t):
if len(s)!=len(t):
print "impossible"
if len(s)==len(t):
i=0
while i<len(s)-1:
for i in s:
if i in t:
print "yay"
print "NO"
あなたは 'しばらく-loop'の状態で使用されている' i'を、インクリメントされていないようです。また、 'while'と' for'ループの組み合わせについては混乱しています。ちょうど 'for-loop'だけで十分です。 – Abdou
'def isa(t、s)を試してください:sorted(t)== sorted(s)'を返してください。これにより、文字列は同じ順序で配置され、後で比較されます。 – Abdou
ありがとう、Abdou。 whileループを削除し、いくつかの変更を適用しました。今それは動作します。ありがとうございました。 – Maya