当前位置:  开发笔记 > 编程语言 > 正文

如何查找列表的一部分是否在str中

如何解决《如何查找列表的一部分是否在str中》经验,为你挑选了1个好方法。

我正在努力做一个审查员.而不是做

if curseword in typed or curseword2 in typed or curseword3 typed:
    print "No cursing! It's not nice!"

我想这样做,以便我可以有一个包含所有单词的列表,并且可以检查这些单词是否在列表中.注意:如果你使用"if any ..."代码,使用while循环,它有太多的输出要处理.



1> Doorknob..:

你可以使用any加一个发电机:

cursewords = ['javascript', 'php', 'windows']
if any(curseword in input for curseword in cursewords):
    print 'onoes'

或者,为了更灵活,一个正则表达式(如果你想做像检测大写诅咒词的东西):

if re.search(r'javascript|php|windows', input, re.IGNORECASE):
    print 'onoes'

(如果你是regex的新手,Python文档有一个很好的教程.)

如果你只是想在不弄乱regexen的情况下忽略大小写,你也可以这样做:

# make sure these are all lowercase
cursewords = ['javascript', 'php', 'windows']
input_lower = input.lower()
if any(curseword in input_lower for curseword in cursewords):
    print 'onoes'


@Oughh我不确定你想说什么.这不是一个无限循环.
推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有