偵測字串清單中的子字串
決定特定字串(例如'abc')是否出現在a 的單一元素中列表是程式設計中的常見任務。在 Python 中,可以使用「in」運算子來匹配字串中的子字串來實現這一點。但是,這種方法可能並不總是提供所需的結果。
考慮以下字串清單:
xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
如果我們嘗試使用以下命令檢查清單中是否存在「abc」以下表達式:
if 'abc' in xs:
它將返回False。這是因為 'in' 檢查精確匹配,而 'abc' 並不是列表中任何項目的精確匹配。
為了克服這個限制,我們可以利用Python 的any 和in 函數來確定是否' abc' 出現在列表中的任何字串中:
if any("abc" in s for s in xs): # ...
此表達式將傳回True,因為'abc' 是'abc-123' 的子字串,並且'abc-456'。
此外,我們可以使用列表理解來獲取包含'abc' 的所有項目的列表:
matching = [s for s in xs if "abc" in s]
這將產生一個包含元素' abc-123' 和'abc-456' 。
使用這些技術,開發人員可以有效地搜尋並在字串清單中定位子字串,從而實現更全面、更準確的資料處理。
以上是如何在Python中有效率地尋找字串清單中的子字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!