anext() 异步迭代器下一项
最后更新:2026-09-22
anext() 异步迭代器下一项
anext(awaitable) 返回 awaitable 的下一项;耗尽时抛 StopAsyncIteration。
| 分类 | 内置函数 |
|---|---|
| 类型 | 内置函数 |
| Python 版本 | 3.10+ |
📝 语法
anext(awaitable[, default])
⚙️ 参数
| iterator 必选 | 异步迭代器(async iterator)。 |
|---|---|
| default 可选 | 耗尽时返回的默认值(提供后不再抛异常)。(默认值:None) |
返回值:返回异步迭代器的下一项;耗尽且提供 default 时返回 default。
💥 异常
StopAsyncIteration— 耗尽且未提供 default 时抛出。TypeError— 参数不是异步迭代器时抛出。
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
1
2
🏷️ 相关内置函数
💡 相关案例
更多实战案例即将上线,敬请期待。
❓ 常见问题
Qanext() 和 next() 有什么区别?
Aanext() 是异步版本的 next(),用于异步迭代器;必须用 await anext(it) 调用,且只能在 async 函数里使用。
Qanext(it) 耗尽时会怎样?
A抛 StopAsyncIteration;传 default 参数则返回 default 而不抛异常,机制与 next() 一致。
Q普通迭代器能传给 anext() 吗?
A不能,会抛 TypeError;anext() 只接受异步迭代器(实现了 __anext__ 的对象)。
Q什么场景用 anext()?
A手动消费异步生成器(async generator)或异步迭代器时,如 await anext(it) 取下一个值,对应同步代码里的 next()。