Python字符串列表中的子串列表

时间:2017-08-28 20:16:03

标签: python list substring

我想查找列表中是否包含子字符串列表。例如,我有:

    string_list = ['item1', 'item2', 'subject3', 'subject4']

和子串列表

    substrings = ['item', 'subject']

我想找出' item'或者'主题'包含在string_list的任何项目中。我个人会这样做:

    any('item' in x for x in string_list)

这适用于一个子字符串,但我想找到一种在子字符串列表中搜索两个字符串的漂亮方法。

3 个答案:

答案 0 :(得分:3)

any(y in x for x in string_list for y in substrings)

答案 1 :(得分:1)

由于子字符串实际上是在开头,你可以使用str.startswith来获取前缀元组:

any(x.startswith(('item', 'subject')) for x in string_list)

答案 2 :(得分:1)

你可以试试这个:

params = {
    RequestItems: {
      [process.env.DYNAMODB_TABLE]: [{
        DeleteRequest: {
          Key: {
            "vuelta": "2017-09-09"
          }
        }
      }]
    }
  };

输出:

string_list = ['item1', 'item2', 'subject3', 'subject4']

substrings = ['item', 'subject']

any(any(b in i for b in substrings) for i in string_list)