我有Python應用程序。檢查字符串是否包含列表中的任何字的最快方法
有450個禁止短語的列表。有來自用戶的消息。我想檢查一下,這個消息是否包含任何這種禁止的階段。什麼是最快的方法呢?
目前我有這樣的代碼:
message = "sometext"
lista = ["a","b","c"]
isContaining = false
for a, member in enumerate(lista):
if message.contains(lista[a]):
isContaining = true
break
有沒有更快的方式做到這一點?我需要在不到1秒內處理消息(最多500個字符)。
'isContaining =任何(在信息x在LISTA x)的所有'的 – falsetru
首先,刪除'enumerate'和'一個,'部分。用'member'替換'lista [a]'。其次,「進」功能不是更快?因此類似於'if member in message:' – Mathias711
成員測試在[a'set'](https://docs.python.org/2/library/stdtypes.html#set-types-set-frozenset)上更快。 – jonrsharpe