Python 从列表中筛选出无值。这段代码是如何工作的?
我正在搜索如何从列表中筛选出无值,并找到了这段代码Python 从列表中筛选出无值。这段代码是如何工作的?,python,iteration,Python,Iteration,我正在搜索如何从列表中筛选出无值,并找到了这段代码 my_list = [None, 1, 1, None] print([x for x in my_list if x]) 它工作得很好,但是没有解释代码是如何工作的,我也不知道 有人能解释一下代码是如何工作的吗 谢谢。如评论中所述,此代码过滤掉任何错误项(0,False,None) 您应该明确说明需要过滤掉的内容: [x for x in my_list if x is not None] 阅读。如注释中所述,此代码将过滤掉任何错误项
my_list = [None, 1, 1, None]
print([x for x in my_list if x])
它工作得很好,但是没有解释代码是如何工作的,我也不知道
有人能解释一下代码是如何工作的吗
谢谢。如评论中所述,此代码过滤掉任何错误项(0,
False
,None
)
您应该明确说明需要过滤掉的内容:
[x for x in my_list if x is not None]
阅读。如注释中所述,此代码将过滤掉任何错误项(0,
False
,None
)
您应该明确说明需要过滤掉的内容:
[x for x in my_list if x is not None]
阅读。阅读列表理解
您还可以使用lambda或filter函数了解列表理解
您也可以使用lambda或filter函数这是错误的代码,无法过滤出
None
。这也会过滤掉零。您需要阅读一些相关内容,并知道bool(None)
是False
。过滤掉None
的代码是错误的。这也会过滤掉零。您需要阅读一些相关内容,并知道bool(None)
是False
。