Python推导式

推导式

包含列表,字典,集合,元组四种推导式。

列表

格式

[ 表达式   for   变量   in   列表]   

[ [表达式   for   变量   in   列表   if   条件]

描述

  • 表达式:生成元素的表达式,可以是函数
  • 迭代语句:遍历或迭代某个某个集合型数据的元素并送入列表 如 for e in elems 将elems中的元素 e传入表达式
  • 条件语句:符合条件的才传入list

举例

ns = [1, 2, 3, 4, 5, 6, 7, 8, 9]
nss = [n for n in ns]
nsss = [n for n in ns if n % 2 == 0]

字典

格式

{键表达式  :  值表达式   for   值   in   可迭代数据   if   条件}

描述

键表达式:生成键的表达式

值表达式:生成值的表达式

条件语句:符合条件的才放入字典

举例

def getKey(n):
    return 'key' + str(n)
n = range(1, 9)
dict = { getKey(i): i + 1 for i in n if i < 4 }

集合

格式

{元素表达式   for   值   in   可迭代的数据   if   条件}

描述

元素表达式:生成元素的表达式

值:可迭代数据中的值

条件语句:符合条件的才放入集合

举例

def getV(n):
    return n + 3

ns = range(0, 10)
{ getV(n) for n in ns if n > 6 }

元组

格式

{值表达式   for   值   in   可迭代的数据   if   条件}

描述

值表达式   :生成值的表达式

值:可迭代数据中的值

条件语句:符合条件的才放入元组

举例

ns = range(0, 9)
tup = (n for n in ns if n % 3 == 0) # 返回一个元素生成器对象
t = tuple(tup) # 这里才转换成了元组

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值