根据内容过滤字符串列表

发布于 2021-01-29 17:24:23

给定list
['a','ab','abc','bac'],我想计算一个包含字符串的列表'ab'。即结果是['ab','abc']。如何在Python中完成?

关注者
0
被浏览
47
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    使用Python,可以通过多种方式实现这种简单的过滤。最好的方法是使用“列表推导”,如下所示:

    >>> lst = ['a', 'ab', 'abc', 'bac']
    >>> [k for k in lst if 'ab' in k]
    ['ab', 'abc']
    

    另一种方法是使用该filter功能。在Python 2中:

    >>> filter(lambda k: 'ab' in k, lst)
    ['ab', 'abc']
    

    在Python 3中,它返回一个迭代器而不是列表,但是您可以强制转换它:

    >>> list(filter(lambda k: 'ab' in k, lst))
    ['ab', 'abc']
    

    尽管使用理解是更好的做法。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看