约 1577 字

约 8 分钟

#Python 的内置函数 aiter

说明:获取异步可迭代对象的迭代器。

#函数说明

def aiter(async_iterable):
    '''
    获取异步可迭代对象的迭代器

    :param async_iterable: 一个异步可迭代对象
    :return: 参数的异步迭代器
    '''

说明

通过调用对象的 __aiter__ 方法,获取异步可迭代对象的迭代器。

可以参考同步版本的 iter 函数。 注意,aiter 没有两个参数的版本,这一点与 iter 函数不同,。

参数

  • async_iterable - 一个异步可迭代对象

返回值

async_iterable 的异步迭代器。

#示例

import asyncio

# 异步迭代器
class AsyncIterator:
    def __init__(self, stop):
        self.__stop = stop
        self.__current = 0
    
    async def __anext__(self):
        if self.__current < self.__stop:
            await asyncio.sleep(0.1)  # 模拟异步操作
            self.__current += 1
            return self.__current - 1
        else:
            raise StopAsyncIteration

# 异步可迭代对象
class AsyncIterable:
    def __init__(self, stop):
        self.__iterator = AsyncIterator(stop)

    def __aiter__(self):
        return self.__iterator

# 创建异步可迭代对象
async_iterable = AsyncIterable(10)

# 获取迭代器
async_iterator = aiter(async_iterable)
print(async_iterator)

>>> Establishing WebAssembly Runtime.

>>> Standby.

Powered by Shift.

#推荐阅读

更新: 2025/10/25

作者: PlanC

创建: 2025/6/9