zoukankan      html  css  js  c++  java
  • Python的列表推导式,字典推导式,集合推导式使用方法

    推导式分为列表推导式(list),字典推导式(dict),集合推导式(set)三种

    1.列表推导式也叫列表解析式。
    功能:是提供一种方便的列表创建方法,所以,列表解析式返回的是一个列表
    格式:用中括号括起来,中间用for语句,后面跟if语句用作判读,满足条件的传到for语句前面用作构建先的列表
    [x**2 for item in item_list if item>2]

    例子:

    1 >>> li=[i*2 for i in range(10) if i % 2 == 0]
    2 >>> print li
    3  [0, 4, 8, 12, 16]
    4  >>>

    很明显,列表解析式最擅长的方式就是对整个列表分别做相同的操作,并且返回得到一个新的列表,并不会直接返回,需要赋值给变量

    2.第二种是字典解析式,这个跟列表解析式的用法是差不多的,只不中括号该改成大括号,毕竟字典本身用的就是大括号。
    例子:

    1 #快速兑换字典键—值
    2 >>> mca={"a":1, "b":2, "c":3, "d":4}
    3 >>> dicts={v:k for k,v in mca.items()}
    4 >>> print dicts
    5 {1: 'a', 2: 'b', 3: 'c', 4: 'd'}
    6 >>>

    3.还有一种是集合推导式。
    功能:集合推导式跟列表推导式差不多,都是对一个列表的元素全部执行相同的操作,
    但集合是一种无重复无序的序列
    区别:跟列表推到式的区别在于:1.不使用中括号,使用大括号;2.结果中无重复;3.结果是一个set()集合,集合里面是一个序列

    1 >>> squared={i*2 for i in [1,1,2]}
    2 >>> print squared
    3 set([2, 4])
    4 >>>
    作者:岑宇
    出处:http://www.cnblogs.com/cenyu/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
    >
  • 相关阅读:
    windows编程:第一个windows程序
    百度地图API多个点聚合时,标注添加的标签label地图刷新就丢失的问题解决
    在WPF的WebBrowser控件中屏蔽脚本错误的提示
    使用SQL语句逐条更新每条记录
    通过 HDU 2048 来初步理解动态规划
    一个乱码问题
    2、设置配置文件
    1、搭建 maven 环境
    MyBatis 缓存机制
    关于 Mybatis 设置懒加载无效的问题
  • 原文地址:https://www.cnblogs.com/cenyu/p/5718410.html
Copyright © 2011-2022 走看看