📅  最后修改于: 2023-12-03 15:04:39.994000             🧑  作者: Mango
在Python中,我们经常需要根据一些条件或者规则来判断一个列表中的元素是否为真或者假。这时,我们可以使用Python中内置的函数filter()
来实现。
filter()
函数filter()
函数可以从给定的序列中过滤出满足给定函数条件的元素,并返回一个迭代器。
filter()
函数的用法如下:
filter(function, iterable)
其中,function
是一个函数,用来自定义过滤条件;iterable
是一个序列,可以是列表、元组、集合等等。
filter()
函数的返回值是一个迭代器,可以使用list()
来将其转换为列表。
下面我们来看一个示例,即如何将一个列表根据规则转换为真或者假。
假设有一个列表num_list
,其中包含多个整数。现在,我们要筛选出其中大于10的数,将其转换为真,其余的转换为假。
num_list = [2, 5, 12, 7, 9, 15, 18, 21]
def greater_than_ten(num):
if num > 10:
return True
else:
return False
filtered_list = list(filter(greater_than_ten, num_list))
print(filtered_list)
运行结果如下:
[12, 15, 18, 21]
在上面的示例中,我们首先定义了一个greater_than_ten()
函数,用来判断一个数是否大于10。然后,使用filter()
函数将该函数作为参数传入,以及要筛选的列表num_list
。filter()
函数将会返回一个迭代器,我们使用list()
将其转换为列表后赋值给filtered_list
。最后,打印filtered_list
可以看到满足条件的元素已经被筛选出来了。
以上就是Python中使用filter()
函数根据条件将列表转换为真假的方法。