我在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")
我也試過爲:
d = word.replace("\n", "").rstrip()
a = addedWord.replace("\n", "").rstrip()
if a is d:
print ("Matched :" +word)
我還嘗試了通過類的變量typeOf(addedWord)
a nd typeOf(word)
這兩個都是從'str'
類,但不相等。這裏有什麼不對嗎?
使用了'is'其比較對象的身份,而不是值進行比較。如果他們在記憶中的不同位置具有相同的價值,那麼他們的身份是不同的。 –
你應該用'=='比較字符串。操作'is'檢查,如果addedWord是相同的對象字 –
相關:http://stackoverflow.com/questions/132988/is-there-a-difference-between-and-is-in-python –