写点什么

Python 代码阅读(第 58 篇):压缩列表

作者:Felix
  • 2021 年 11 月 16 日
  • 本文字数:362 字

    阅读完需:约 1 分钟

Python代码阅读(第58篇):压缩列表

Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码


本篇阅读的代码实现了去除列表中的“假值”的功能。


本篇阅读的代码片段来自于30-seconds-of-python

compact

def compact(lst):  return list(filter(None, lst))
# EXAMPLESprint(compact([0, 1, False, 2, '', 3, 'a', 's', 34])) # [ 1, 2, 3, 'a', 's', 34 ]
复制代码


compact函数接收一个列表,返回去除“假值”之后的列表。


函数使用filter函数返回一个新的迭代器,再使用list函数生成新的列表。


filter(function, iterable)函数用iterable中函数function返回真的那些元素,构建一个新的迭代器。iterable可以是一个序列,一个支持迭代的容器,或一个迭代器。如果functionNone,则会假设它是一个身份函数,即iterable中所有返回假的元素会被移除。也就是如下的生成器表达式。


(item for item in iterable if item)
复制代码


发布于: 43 分钟前阅读数: 4
用户头像

Felix

关注

没有看点,仅仅闲聊。欢迎关注“没看点” 2018.05.04 加入

欢迎关注个人公众号:没看点 个人主页:www.zhangfelix.com

评论

发布
暂无评论
Python代码阅读(第58篇):压缩列表