私はPython 3.5で、ファイルから一致する単語を探したいと思っています。私が与えている言葉はawesome
であり、.txt
ファイルの最初の単語もawesome
です。なぜaddedWord
がword
と等しくないのですか?誰かが私に理由を与えることができますか?ファイルからの文字列が一般的な文字列と等しくないのはなぜですか?
myWords.txt
awesome
shiny
awesome
clumsy
コード
addedWord = "awesome"
with open("myWords.txt" , 'r') as openfile:
for word in openfile:
if addedWord is word:
print ("Match")
をマッチングするためのIはまた、試してみました:私もで、変数のクラスを取得しようとしました
d = word.replace("\n", "").rstrip()
a = addedWord.replace("\n", "").rstrip()
if a is d:
print ("Matched :" +word)
typeOf(addedWord)
a nd typeOf(word)
どちらも'str'
クラスですが、等しくはありません。ここに間違いはありますか?
:
ので、これを試してみてください。それらが同じ値を持つメモリ内の別の場所にある場合、そのIDは異なります。 –
文字列を '=='と比較する必要があります。演算子 'added'は、addedWordが単語 –
と同じオブジェクトであるかどうかをチェックします。関連:http://stackoverflow.com/questions/132988/is-there-a-difference-between-and-is-in-python –