为什么不通过变量工作在列表中搜索此正则表达式

时间:2018-11-27 04:43:04

标签: python regex python-3.x

at_the_party = ['bob', 'steve', 'james', 'alfred']
invited_list = ['Mr. bob', 'david', 'james']

首先,我如何简单地将可悲的项目传递给re.search,如下所示?

for item in at_the_party:
    if re.search(item, invited_list):
        print(item, " showed up to the party")
    else:
        print("didnt show up: ", item)

这给了我一个通用的“类型错误”。我希望得到以下输出:

james

其次,我想(我认为我需要)传递变量,因为我猜这是用%s这样的字符串格式化,例如:

at_the_party = ['bob', 'steve', 'james', 'alfred']
invited_list = ['Mr. bob', 'david', 'james']



for item in at_the_party:
    if re.search('.*%s.*' %item, invited_list):
        print(item, " showed up to the party")
    else:
        print("didnt show up: ", item)

这是使用以模式和字符串形式传递的变量来执行re.search的正确方法吗?

0 个答案:

没有答案