如何在Python中过滤列表并输出含指定字符串的完整元素?
Python列表过滤:筛选包含指定字符串的元素
当然有超简便的实现方法!Python处理这类列表筛选需求,用列表推导式或者filter()函数都能快速搞定,给你演示两种常用方案:
方法一:列表推导式(推荐,可读性强)
这是Python里最常用的简洁写法,直接遍历列表并筛选符合条件的元素:
my_list = ["INFO100","INFO104","INFO110","INFO150","INFO125","ECON100", "ECON102"] filtered_items = [item for item in my_list if "ECON" in item] print(filtered_items) # 输出: ['ECON100', 'ECON102']
原理很简单:遍历my_list里的每一个item,判断"ECON"是否包含在当前元素中,符合条件的就被加入新列表。
方法二:使用filter()函数
如果你更喜欢函数式编程风格,filter()配合lambda表达式也能实现:
my_list = ["INFO100","INFO104","INFO110","INFO150","INFO125","ECON100", "ECON102"] filtered_items = list(filter(lambda x: "ECON" in x, my_list)) print(filtered_items) # 输出: ['ECON100', 'ECON102']
filter()会把列表中的每个元素传入lambda函数,仅保留返回True的元素,最后通过list()将过滤结果转为列表格式。
两种方法都高效好用,日常开发中列表推导式的可读性更强,用得更普遍哦~
内容的提问来源于stack exchange,提问作者Thymas




