python--filter()函数

描述

filter() 函数用于过滤列表形式的序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表,并以迭代器对象的形式返回。

语法

filter(function, iterable)

function – 判断函数。
iterable – 可迭代对象。

示例

过滤出列表中的所有奇数

def is_odd(n):
    return n % 2 == 1
newlist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
# 因为返回的是迭代器,所以要打印出迭代器中每个元素
print(newlist.__next__())

python--filter()函数_第1张图片
在运行程序时,filter()函数会先逐次从[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]中按照顺序抽取元素,并把元素传入is_odd()函数,如果返回True,则改元素成功被选入!

筛选 requires_grad==True 的网络层

filter(lambda p: p.requires_grad, net.parameters())

在这里, net.parameters()也是一个迭代器(pytorch框架下参数迭代器)

这个函数是筛选网络net中 requires_grad==True 的网络层。

你可能感兴趣的:(python,python)