測試Python 清單中多個值的成員資格
在Python 中,使用'in' 測試清單中多個值的成員資格運算符可能會導致意想不到的結果。考慮以下範例:
結果 'a', True 表示清單中存在 'a',但它不指定 'b' 是否也存在。這是因為 Python 將 'in' 表達式視為一個元組,從而產生如上所示的輸出。
要準確檢查列表中是否同時存在'a' 和'b',您可以使用以下命令方法:
這個表達式確保列表['a', 'b '] 中的每個元素都包含在容器['b', 'a', 'foo', 'bar' 中]。如果任何元素不存在,則表達式將傳回 False。
替代選項
除了 'all' 函數之外,還有其他方法來執行此檢查,但它們可能不如「全部」方法那麼通用。
速度注意事項
在某些情況下,子集測試可能比「全部」更快方法,特別是當容器和測試物品較小時。然而,整體速度差異不足以證明子集測試的壓倒性使用是合理的。
需要注意的是,「in」的行為取決於左側參數的類型。例如,使用帶有字串的“in”將連接值而不是測試成員資格。
選擇測試清單中多個值的成員資格的最佳方法取決於特定要求、涉及的資料類型,以及效能考慮因素。
以上是如何準確測試 Python 清單中多個值的成員資格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!