前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python面试题之集合推导式、字典推导式

Python面试题之集合推导式、字典推导式

作者头像
Jetpropelledsnake21
发布2019-02-15 16:22:03
1.1K1
发布2019-02-15 16:22:03
举报
文章被收录于专栏:JetpropelledSnakeJetpropelledSnake

集合推导式

集合推导式(set comprehensions)跟列表推导式也是类似的, 唯一的区别在于它们使用大括号{}表示。

代码语言:javascript
复制
Code:
    sets = {x for x in range(10)}
Result:
    {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

集合解析把列表解析中的中括号变成大括号,返回集合。

 下面我们来个应用场景,一直一个列表中有很多元素,我们做到快速去重。

代码语言:javascript
复制
Code:
  heavy = {x for x in [2, 3, 5, 3, 5, 2, 6]}
  print(heavy)
Result:
  {2, 3, 5, 6}

集合推导式生成内容,结果要是可hash的:

字典推导式

 字典推导式(dict comprehensions)和列表推导的使用方法也是类似的。

字典解析也是使用大括号包围,并且需要两个表达式,一个生成key, 一个生成value 两个表达式之间使用冒号分割,返回结果是字典. 说了这么多推导式,为什么没有元组推导式呢,元组和列表的操作几乎是一样的,除了不可变特性以外

代码语言:javascript
复制
Code:
  tuple([x for x in range(10)])
Result:
  (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

参考

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-06-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 集合推导式
  • 字典推导式
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档