我是一个noob,所以我希望这是正确的地方问这个问题。这真的让我疯狂。我在寻找一些文本文件中的一句话,这里是部分代码:Python:比较两个字符串,应该是相同的,但不是
SentenceIMLookingfor='blha blha blah'
with open('textfile.lua','r') as my_file:
raw_dadat=my_file.read().split('\n')
for i in range(1, len(raw_dadat)):
if(raw_dadat[i]==SentenceIMLookingfor):
DO_SOMETHING
那么它不会做任何事情(我需要知道在什么行“SentenceIMLookingfor”是)。 我已经检查过ids(ofc它们不是相同的,所以如果我使用'is'而不是'==',它将不起作用)。我也确定这个句子在我的文本文件中,它甚至存储在raw_data [210]中。我检查了“类型”,它是str。句子中还有大约3个空格,我不知道这是否可以提供帮助,而“len(raw_dadat)”或多或少等于4000. 嗯,我没有看到我做错了什么。 非常感谢!
你有没有尝试打印出raw_datat [i]试图去调试呢? – jdero
可能有一些标点符号,尾随或前导空格或其他不会导致完全匹配的内容。我会遍历字符串并添加一些分隔符来检查。 –