python內(nèi)置函數(shù)anext的具體使用
作用
anext() 是 Python 3.10 版本中的一個(gè)新函數(shù)。它在等待時(shí)從異步迭代器返回下一項(xiàng),如果給定并且迭代器已用盡,則返回默認(rèn)值。這是 next() 內(nèi)置的異步變體,行為類似。
語法
awaitable anext(async_iterator[, default])
其中 async_iterator 是一個(gè)異步迭代器。 它接受一個(gè)可選參數(shù),當(dāng)?shù)骱谋M時(shí)返回。
當(dāng)進(jìn)入 await 狀態(tài)時(shí),從給定異步迭代器(asynchronous iterator)返回下一數(shù)據(jù)項(xiàng),迭代完畢則返回 default。
這是內(nèi)置函數(shù) next() 的異步版本,類似于調(diào)用 async_iterator 的 anext() 方法,返回一個(gè) awaitable,等待返回迭代器的下一個(gè)值。若有給出 default,則在迭代完畢后會(huì)返回給出的值,否則會(huì)觸發(fā) StopAsyncIteration。
例子
import asyncio class CustomAsyncIter: ? ? def __init__(self): ? ? ? ? self.iterator = iter(['A', 'B']) ? ? def __aiter__(self): ? ? ? ? return self ? ? async def __anext__(self): ? ? ? ? try: ? ? ? ? ? ? x = next(self.iterator) ? ? ? ? except StopIteration: ? ? ? ? ? ? raise StopAsyncIteration from None ? ? ? ? await asyncio.sleep(1) ? ? ? ? return x async def main1(): ? ? iter1 = CustomAsyncIter() ? ? print(await anext(iter1)) ? ? ? # Prints 'A' ? ? print(await anext(iter1)) ? ? ? # Prints 'B' ? ? print(await anext(iter1)) ? ? ? # Raises StopAsyncIteration async def main2(): ? ? iter1 = CustomAsyncIter() ? ? print('Before') ? ? ? ? ? ? ? ? # Prints 'Before' ? ? print(await anext(iter1, 'Z')) ?# Silently terminates the script!!! ? ? print('After') ? ? ? ? ? ? ? ? ?# This never gets executed asyncio.run(main1()) ''' A B raise StopAsyncIteration ''' asyncio.run(main2()) ''' Before A After '''
到此這篇關(guān)于python內(nèi)置函數(shù)anext的具體使用的文章就介紹到這了,更多相關(guān)python內(nèi)置函數(shù)anext內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python中的內(nèi)置函數(shù)getattr()介紹及示例
- Python常用內(nèi)置函數(shù)總結(jié)
- Python內(nèi)置函數(shù)bin() oct()等實(shí)現(xiàn)進(jìn)制轉(zhuǎn)換
- Python內(nèi)置函數(shù)dir詳解
- Python內(nèi)置函數(shù) next的具體使用方法
- Python內(nèi)置函數(shù)reversed()用法分析
- Python內(nèi)置函數(shù)—vars的具體使用方法
- python 函數(shù)中的內(nèi)置函數(shù)及用法詳解
- Python內(nèi)置函數(shù)的用法實(shí)例教程
- 深入理解Python3 內(nèi)置函數(shù)大全
相關(guān)文章
matplotlib?雙y軸繪制及合并圖例的實(shí)現(xiàn)代碼
這篇文章主要介紹了matplotlib?雙y軸繪制及合并圖例,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-10python下paramiko模塊實(shí)現(xiàn)ssh連接登錄Linux服務(wù)器
這篇文章主要介紹了python下paramiko模塊實(shí)現(xiàn)ssh連接登錄Linux服務(wù)器的方法,實(shí)例分析了paramiko模塊實(shí)現(xiàn)ssh連接的具體用法,需要的朋友可以參考下2015-06-06用Python監(jiān)控NASA TV直播畫面的實(shí)現(xiàn)步驟
本文分享一個(gè)名為"Spacestills"的開源程序,它可以用于查看 NASA TV 的直播畫面(靜止幀)2021-05-05解決Python?出現(xiàn)File?“<stdin>“,?line?1非語法錯(cuò)誤的問題
這篇文章主要介紹了Python?出現(xiàn)File?“<stdin>“,?line?1非語法錯(cuò)誤的解決辦法,本文給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03PyAutoGUI圖形用戶界面自動(dòng)化的超詳細(xì)教程
PyautoGUI是一個(gè)純Python的自動(dòng)化工具,能實(shí)現(xiàn)用程序自動(dòng)控制鼠標(biāo)和鍵盤操作,下面這篇文章主要給大家介紹了關(guān)于PyAutoGUI圖形用戶界面自動(dòng)化的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04python接口調(diào)用已訓(xùn)練好的caffe模型測(cè)試分類方法
今天小編就為大家分享一篇python接口調(diào)用已訓(xùn)練好的caffe模型測(cè)試分類方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-08-08使用Python生成200個(gè)激活碼的實(shí)現(xiàn)方法
這篇文章主要介紹了使用Python生成200個(gè)激活碼的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11