美文网首页
python的高级特性:推导式

python的高级特性:推导式

作者: 金融测试民工 | 来源:发表于2020-04-07 21:37 被阅读0次

什么是推导式?

    推导式是从一个或者多个迭代器快速简洁的创建数据结构的一种方法。而迭代器我们暂且可以认为是我们像列表、字典和集合等容器,容器就是一种迭代器,字符串也是,放在in后面。

    推导式将循环和条件判断结合,从而避免语法冗长的代码。可以用来生成列表、字典和集合。

列表推导式:

[<表达式> for <变量> in <可迭代对象> if <逻辑条件>]

字典推导式:

{<键值表达式>:<元素表达式> for <变量> in <可迭代对象> if <逻辑条件>}

集合推导式:

{<元素表达式> for <变量> in <可迭代对象> if <逻辑条件>}

如下例子:

推导式例子

    上面第二个例子在python3输出,发现字典输出是有序的,第三个例子的输出可以看出,集合当中的元素本身是没有顺序的,从第四个例子输出可以看出,集合是会自动去重的。而第五个例子的列表是没有去重的。第六个例子isinstance函数判断只取字符串。

字典推导式

生成器推导式:

(<元素表达式> for <变量> in <可迭代对象> if <逻辑条件>)

    返回一个生成器对象,可是可迭代对象。但生成器并不立即产生全部元素,仅在要用到元素的时候才生成,可以极大节省内存

生成器推导式

相关文章

网友评论

      本文标题:python的高级特性:推导式

      本文链接:https://www.haomeiwen.com/subject/aeuophtx.html