python - 一次在流中搜索多个字符串而不执行“text1”或“text2”或“text3”或
问题描述
我想知道 python 中是否有一种方法可以一次在流中搜索多个字符串,而不会将它们全部塞入一行。我可以把它们放在某种列表中,然后用它代替一长串“或”吗?
if re.search("japan" or "japanese" or "nihon" or "nippon", str(comment.body).lower(), re.IGNORECASE):
return True
这就是我现在所拥有的,我只是为了让它看起来更整洁,而不是搜索我能想到的所有日本变体。谢谢你的帮助!
解决方案
如果您更喜欢它的外观,您可以使用列表理解来执行此操作
search_terms = ["japan", "japanese", "nihon", "nippon"]
if any([x in str(comment.body).lower() for x in search_terms]):
return True
推荐阅读
- c# - 以文本格式(不是二进制)保存的序列化程序,不需要公共构造函数并且可以保存字段
- linked-list - 带有链表的插入排序,“分段错误 - 无效的内存引用” - Fortran
- python - 将列表成员作为值添加到字典
- r - R Plotly在等高线图上显示字符串
- python-3.x - 如何仅为一个 rq 队列启动多个工作人员?
- javascript - 如何使用javascript从一列中获取内容
- c - C程序中的命名管道(unix)
- reactjs - PostMan vs Axios 在发出请求时包含授权标头
- squarespace - 使用 CSS 重新排序 Squarespace 索引图像块?
- python - 内核错误:无法启动 - ImportError: DLL load failed while importing win32api