我使用的是python3.5,希望从一个文件中找到匹配的单词。我给出的单词是awesome
,.txt
文件中的第一个单词也是awesome
。那么为什么addedWord
不等于word
?有人能告诉我原因吗?在
我的文字.txt
awesome
shiny
awesome
clumsy
匹配代码
^{pr2}$我也尝试过:
d = word.replace("\n", "").rstrip()
a = addedWord.replace("\n", "").rstrip()
if a is d:
print ("Matched :" +word)
我还试图通过typeOf(addedWord)
和typeOf(word)
得到变量的类,它们都来自'str'
类,但不相等。这里有什么问题吗?在
这两个字符串永远不会是同一个对象,因此不应使用
is
来比较它们。使用==
。在您去除换行符的直觉是正确的,但是您只需要调用一个
strip()
(它将删除所有空白,包括制表符和换行符)。在你的代码有两个问题。在
1)从迭代文件返回的字符串包括尾随的换行符。正如您所怀疑的那样,您需要}离开新行。在
.strip()
、.rstrip()
或{2)字符串比较应使用
==
,而不是is
。在所以,试试这个:
相关问题 更多 >
编程相关推荐