异步函数的结果:asyncio.run

异步函数的结果:asyncio.run

作用说明 异步函数适合处理需要等待的任务,asyncio.run() 可以启动一个最基础的协程。 import asyncio async def greet(): return "

阅读更多 →
一边生成一边去重:集合推导式

一边生成一边去重:集合推导式

作用说明 集合推导式可以一边生成结果,一边自动去掉重复项。 s = {x * x for x in [1, 2, 2, 3]} print(sorted(s)) 小练习 程序运行后,会输出什么? 提

阅读更多 →
按自定义标准排序:lambda key

按自定义标准排序:lambda key

作用说明 lambda 配合 key 可以让排序按你指定的标准来进行。 words = ["apple", "pear", "banana"

阅读更多 →
一次拆出中间一段:星号解包

一次拆出中间一段:星号解包

作用说明 星号解包适合在拆分序列时,一次接住中间一整段内容。 a, *b, c = [1, 2, 3, 4, 5] print(b) 小练习 程序运行后,会输出什么? 提交要求:只提交最终输出结果,

阅读更多 →
只截取一小段:itertools.islice

只截取一小段:itertools.islice

作用说明 itertools.islice 可以从一个可迭代对象中截取你想要的一小段。 from itertools import islice print(list(islice(range(10

阅读更多 →
高效两端操作:deque

高效两端操作:deque

作用说明 deque 适合在序列两端进行高效操作。 from collections import deque d = deque([1, 2, 3]) d.rotate(1) print(list

阅读更多 →
字典没有值时自动准备:defaultdict

字典没有值时自动准备:defaultdict

作用说明 defaultdict 可以在键还不存在时,自动帮你准备一个默认值。 from collections import defaultdict d = defaultdict(list) d

阅读更多 →
自动记住算过的结果:lru_cache

自动记住算过的结果:lru_cache

作用说明 lru_cache 可以把函数算过的结果先记住,下次再用时直接拿出来。 from functools import lru_cache @lru_cache(None) def fib(n

阅读更多 →
提前固定一部分参数:functools.partial

提前固定一部分参数:functools.partial

作用说明 functools.partial 可以先固定函数的一部分参数,得到一个更顺手的新函数。 from functools import partial base2_int = partial

阅读更多 →
进入和离开时自动处理:上下文管理器

进入和离开时自动处理:上下文管理器

作用说明 上下文管理器适合处理“进入时做什么、离开时做什么”的场景。 class Demo: def __enter__(self): return "start&q

阅读更多 →