Discuss / Python / 老师求助啊!

老师求助啊!

Topic source

Maverickboot

#1 Created at ... [Delete] [Delete and Lock User]

还是没看懂

it=filter(_not_divisible(n),it)

这里函数加了括号有n,怎么之前用filter都没加呢? 比如这个 list(filter(not_empty, ['A', '', 'B', None, 'C', ' ']))

另外这个 def _not_divisible(n): return lambda x: x % n > 0

x的值是怎么传进去的呢? it=filter(_not_divisible(n),it)

这个是挨个吧it里面的数等于n运行函数,那x应该是等于剩余的it,没有哪里赋值了啊?

还有filter会作用于每一个it里面的元素,it是个生成器,还是无限大的,我觉得程序运行一遍就会无限循环,外面怎么还能不断while True呢?

廖雪峰

#2 Created at ... [Delete] [Delete and Lock User]
fn = _not_divisible(n)
it = filter(fn, it)

  • 1

Reply