Filter() 与 lambda 函数
在上一个练习中,您使用 lambda 函数将某个操作匿名地嵌入到 map() 中。本练习将继续练习这一点,不过这次将配合可能对您来说全新的 filter() 使用!filter() 提供了一种方式,从列表中筛除不满足特定条件的元素。
本练习的目标是:使用 filter(),从一个字符串列表中创建一个新列表,其中只包含长度大于 6 的字符串。
本练习是课程的一部分
Python 函数入门
练习说明
- 在
filter()调用中,传入一个 lambda 函数以及字符串列表fellowship。该 lambda 函数应检查字符串member的字符数是否大于 6;请使用len()来完成此检查。将得到的 filter 对象赋值给result。 - 将
result转换为列表并打印该列表。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create a list of strings: fellowship
fellowship = ['frodo', 'samwise', 'merry', 'pippin', 'aragorn', 'boromir', 'legolas', 'gimli', 'gandalf']
# Use filter() to apply a lambda function over fellowship: result
____ = filter(____, ____)
# Convert result to a list: result_list
____
# Print result_list
print(result_list)