python高级特性复习

python 高级特性复习

集合的推导式

列表推导式,使用一句表达式构造一个新列表,可包含过滤、转换等操作。

语法:[exp for item in collection if codition]

print(['No.' + str(i) for i in range(1, 10) if i <= 3])

字典推导式,使用一句表达式构造一个新列表,可包含过滤、转换等操作。

语法:{key_exp:value_exp for item in collection if codition}

print({'No.' + str(k): str(v) for k, v in enumerate(range(1, 10)) if v < 3})

集合推导式

语法:{exp for item in collection if codition}

print({i for i in range(10) if i % 2 == 1})

嵌套列表推导式

print([item for lst in [range(10), range(10, 20)]
       for item in lst if item % 2 == 1])

多函数模式

def minus(i):
    return i - 1


def add(i):
    return i + 10


def process(list, functions):
    result = []
    for item in list:
        for function in functions:
            item = function(item)
        result.append(item)
    return result


print(process(range(10), [add, minus]))

匿名函数

print((lambda x: x + 10)(1))

map python3.x 返回迭代器

print([x for x in map(add, range(10))if x % 2 == 0])

reduce

from functools import reduce


def addtwo(x, y):
    return x + y


print(reduce(addtwo, range(10)))

filter 返回生成器

print([i for i in filter(lambda y: add(minus(y)) >= 0, range(-20, 10)) if i % 2 == 0])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值