簡體   English   中英

python比較列表中的字符串與以\\ r \\ n開頭的項目

[英]python compare string in list with item starting with \r\n

好吧,讓我們說我有一個清單。

l = ['a', '\r\nb']

和要搜索的已知項目。

search = 'b'

如果我輸入

search in l

返回False 但是,如果我鍵入。

for item in l:
    search in item

我會收到

False
True

后者對我很有意義,因為'b''\\r\\nb' 但是,為什么呢?為什么在['a', '\\r\\nb']沒有'b'

因為在第一種情況下( search in l ),它將嘗試找到與search詞匹配的list任何元素的精確匹配。

當您嘗試遞歸遍歷每個元素並進行匹配時,就會在成功找到的那個元素中找到它。

因為您的列表項是'a'和'\\ r \\ nb',所以當您在列表中進行搜索時,它會比較每個=='b'項及其FALSE。

“ b”是列表中第二項的子字符串。 '\\ r \\ nb'中的'b'為TRUE(您的第二次測試),因為它搜索了'\\ r \\ nb'中的子字符串'b'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM