我是一個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
可能有一些標點符號,尾隨或前導空格或其他不會導致完全匹配的內容。我會遍歷字符串並添加一些分隔符來檢查。 –