欢迎访问宙启技术站
智能推送

Python中的filter函数用于数据筛选的10个示例

发布时间:2023-07-02 07:21:33

在Python中,filter()函数常用于对数据进行筛选和过滤操作。它接受一个函数和一个可迭代对象作为参数,并返回一个新的可迭代对象,其中包含满足条件的元素。下面是10个使用filter()函数的示例,每个示例根据不同的条件对数据进行筛选。

1. 筛选偶数:筛选出一个列表中的所有偶数。

data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

result = list(filter(lambda x: x % 2 == 0, data))
print(result)  # 输出:[2, 4, 6, 8, 10]

2. 筛选大于5的数:筛选出一个列表中的所有大于5的数。

data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

result = list(filter(lambda x: x > 5, data))
print(result)  # 输出:[6, 7, 8, 9, 10]

3. 筛选小写字母:筛选出一个字符串中的所有小写字母。

data = "Hello World"

result = list(filter(lambda x: x.islower(), data))
print(result)  # 输出:['e', 'l', 'l', 'o')

4. 筛选空字符串:筛选出一个列表中的所有空字符串。

data = ['', 'hello', '', 'world', '']

result = list(filter(lambda x: x == '', data))
print(result)  # 输出:['', '']

5. 筛选负数:筛选出一个列表中的所有负数。

data = [1, -2, 3, -4, 5, -6, 7, -8, 9, -10]

result = list(filter(lambda x: x < 0, data))
print(result)  # 输出:[-2, -4, -6, -8, -10]

6. 筛选长度大于3的字符串:筛选出一个列表中长度大于3的字符串。

data = ['hello', 'world', 'python', 'is', 'cool']

result = list(filter(lambda x: len(x) > 3, data))
print(result)  # 输出:['hello', 'world', 'python', 'cool']

7. 筛选奇数索引位置的元素:筛选出一个列表中奇数索引位置的元素。

data = ['H', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'l', 'd']

result = list(filter(lambda x: data.index(x) % 2 != 0, data))
print(result)  # 输出:['e', 'l', 'o', 'r']

8. 筛选包含特定字符的字符串:筛选出一个列表中包含特定字符的字符串。

data = ['hello', 'world', 'python', 'is', 'cool']

result = list(filter(lambda x: 'o' in x, data))
print(result)  # 输出:['hello', 'world', 'cool']

9. 筛选大于平均值的数字:筛选出一个列表中大于平均值的数字。

data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

average = sum(data) / len(data)
result = list(filter(lambda x: x > average, data))
print(result)  # 输出:[6, 7, 8, 9, 10]

10. 筛选女性名字:筛选出一个列表中的所有女性名字。

data = ['John', 'Mary', 'Alice', 'David', 'Emma', 'Sarah']

female_names = ['Mary', 'Alice', 'Emma', 'Sarah']
result = list(filter(lambda x: x in female_names, data))
print(result)  # 输出:['Mary', 'Alice', 'Emma', 'Sarah']

这是10个使用Python中的filter()函数的示例,通过filter()函数可以根据不同的条件对数据进行筛选和过滤操作,提高了数据处理的灵活性和效率。