chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

python協(xié)程之a(chǎn)syncio簡(jiǎn)單使用

冬至配餃子 ? 來(lái)源:繆斯之子 ? 作者:肖新苗 ? 2022-08-29 17:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

目錄

簡(jiǎn)單的使用

相同和同步的對(duì)比

順下載的例子

1.簡(jiǎn)單的使用

import asyncio

async def req1():
await asyncio.sleep(1)
print('執(zhí)行 req1')
return 1


async def req2():
print('執(zhí)行 req2')
return 2


async def main():
list = [req1(), req2()]
res = await asyncio.gather(*list)
'''
雖然,req2是先執(zhí)行完的,
但是res返回值的順序, 還是跟list順序保持一致
'''
print(res)


asyncio.get_event_loop().run_until_complete(main())
'''
結(jié)果:
執(zhí)行 req2
執(zhí)行 req1
[1, 2]
'''

2.相似和同時(shí)的對(duì)比

測(cè)試2個(gè)請(qǐng)求,同時(shí)觸發(fā)請(qǐng)求執(zhí)行的時(shí)間短,我是延遲讓請(qǐng)求延遲返回

import asyncio
import time

import requests
from aiohttp import ClientSession


async def fetch(session, param):
async with session.get as resp:
data = await resp.json()
return data


async def req_async():
async with ClientSession() as session:
return await asyncio.gather(fetch(session, 2), \
fetch(session, 1))


def req():
session = requests.Session()
p1, p2 = 2, 1
return [
session.get.json(),
session.get.json()
]


async def main():
s1 = time.time()
v1 = await req_async()
s2 = time.time()
v2 = req()
print(f'異步請(qǐng)求時(shí)間:{round(s2-s1,1)}s \
響應(yīng)結(jié)果:{[v["args"]["a"] for v in v1]}')
print(f'同步請(qǐng)求時(shí)間:{round(time.time()-s2,1)}s \
響應(yīng)結(jié)果:{[v["args"]["a"] for v in v2]}')


if __name__ == '__main__':
asyncio.get_event_loop().run_until_complete(main())
'''
結(jié)果:
異步請(qǐng)求時(shí)間:3.2s 響應(yīng)結(jié)果:['2', '1']
同步請(qǐng)求時(shí)間:7.9s 響應(yīng)結(jié)果:['2', '1']
'''


3.相關(guān)下載的例子

看似請(qǐng)求、極大的文件限制、意外保存

async def download(sem, page: int, folder: str, session: ClientSession):
async with sem:
async with session.get(url, params={'page': page}) as resp:
async with aiofiles.open(f'{folder}/{page}.json', mode='w') as f:
await f.write(await resp.text())
return page


async def main():
# 請(qǐng)求url參數(shù)列表
url_pages = range(1, 5)
# 創(chuàng)建文件夾data
folder_name = 'data'
if not os.path.exists(folder_name):
os.makedirs(folder_name)
# 限制并發(fā)數(shù)量
sem = asyncio.Semaphore(50)
# 異步請(qǐng)求,并保存到文件
async with ClientSession(connector=TCPConnector(limit=5),
timeout=ClientTimeout(300)) as session:
tasks = []
for page in url_pages:
tasks.append(download(sem, page, folder_name, session))
result = await asyncio.gather(*tasks)
exp = set(url_pages)
act = set(result)
if exp == act:
print(f'全部下載完成')
else:
print(f'未成功:{exp - act},成功:{exp & act}')


if __name__ == '__main__':
asyncio.get_event_loop().run_until_complete(main())




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • python
    +關(guān)注

    關(guān)注

    57

    文章

    4858

    瀏覽量

    89600
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    NICE協(xié)處理器接口信號(hào)解讀--以demo為例

    的復(fù)位信號(hào)。 nice_active表示nice協(xié)處理器是否正在工作,但該信號(hào)在上層文件中未例化,如下圖所示。 nice_mem_holdup信號(hào)在e203_lsu_ctrl.v文件中用于覆蓋cpu
    發(fā)表于 10-31 08:01

    利用Verdi調(diào)試協(xié)處理器的實(shí)現(xiàn)步驟

    本次給大家介紹的是利用Verdi調(diào)試協(xié)處理器的實(shí)現(xiàn)步驟。 有時(shí)為了觀察協(xié)處理器運(yùn)行情況,需要查看協(xié)處理器接口的信號(hào)波形,此時(shí)可以用Verdi來(lái)查看主處理器發(fā)給協(xié)處理器的自定義指令以進(jìn)一
    發(fā)表于 10-30 08:26

    MD5信息摘要算法實(shí)現(xiàn)二(基于蜂鳥(niǎo)E203協(xié)處理器)

    本設(shè)計(jì)首先根據(jù)MD5協(xié)處理器的功能設(shè)計(jì)MD5算法IP核,軟件部分使用串口程序助手進(jìn)行64位加解密結(jié)果的輸出,E203內(nèi)核根據(jù)地址取出對(duì)應(yīng)的數(shù)據(jù),使用相關(guān)的指令進(jìn)行傳輸顯示。通過(guò)NICE接口將MD5協(xié)
    發(fā)表于 10-30 07:54

    基于E203 NICE協(xié)處理器擴(kuò)展指令

    )和rd(讀)傳遞,不需要讀取存儲(chǔ)器的數(shù)據(jù)(這樣可精簡(jiǎn)化協(xié)處理器的控制代碼) 在官方案例的基礎(chǔ)上 新增一個(gè)簡(jiǎn)單的add指令 c= a + b(主要是將內(nèi)聯(lián)匯編弄清楚,使用rs2)
    發(fā)表于 10-21 14:35

    基于E203 NICE協(xié)處理器擴(kuò)展指令2.0

    實(shí)現(xiàn)功能:基于官方提供的demo nice的硬件代碼,設(shè)計(jì)一個(gè)基于e203 nice協(xié)處理的加法器。 NICE協(xié)處理器理論學(xué)習(xí) nice協(xié)處理器的作用主要是用于控制通路的管理 去年國(guó)一的協(xié)
    發(fā)表于 10-21 10:39

    termux調(diào)試python猜數(shù)字游戲

    用termux做一個(gè)猜數(shù)字游戲 下面是在Termux中創(chuàng)建猜數(shù)字游戲的步驟及完整實(shí)現(xiàn)方案,結(jié)合Python實(shí)現(xiàn)(最適配Termux環(huán)境): ? 一、環(huán)境準(zhǔn)備(Termux基礎(chǔ)配置) 1.
    發(fā)表于 08-29 17:15

    termux如何搭建python游戲

    termux如何搭建python游戲 Termux搭建Python游戲開(kāi)發(fā)環(huán)境的完整指南 一、Termux基礎(chǔ)環(huán)境準(zhǔn)備 Termux是一款無(wú)需root即可在安卓設(shè)備上運(yùn)行的Linux終端
    發(fā)表于 08-29 07:06

    【HZ-T536開(kāi)發(fā)板免費(fèi)體驗(yàn)】4、使用藍(lán)牙模塊讀取小米溫濕度計(jì)的數(shù)據(jù)

    upgrade bluez 安裝好工具后,可以先使用工具簡(jiǎn)單的測(cè)試下,例如掃描設(shè)備什么的。這里我們就跳過(guò)了。 然后,我們需要?jiǎng)?chuàng)建一個(gè)虛擬環(huán)境,好安裝腳本需要的依賴,這里我們考慮使用Python腳本來(lái)抓取ble
    發(fā)表于 08-25 22:16

    python入門(mén)圣經(jīng)-高清電子書(shū)(建議下載)

    和Pygal 等強(qiáng)大的Python 庫(kù)和工具介紹,以及列表、字典、if 語(yǔ)句、類、文件與異常、代碼測(cè)試等內(nèi)容; 第二部分將理論付諸實(shí)踐,講解如何開(kāi)發(fā)三個(gè)項(xiàng)目,包括簡(jiǎn)單Python 2D 游戲開(kāi)發(fā)如何利用數(shù)據(jù)
    發(fā)表于 04-10 16:53

    10分鐘上手寫(xiě)代碼,LuatOS協(xié)程輕松掌握!

    10分鐘學(xué)會(huì)LuatOS協(xié)程,從此你的程序也能像通勤族利用碎片時(shí)間一樣游刃有余?,F(xiàn)在就去動(dòng)手試一試,開(kāi)啟異步編程新體驗(yàn)! 寫(xiě)給第一次聽(tīng)說(shuō)協(xié)程的你?: 別怕!協(xié)程不是復(fù)雜概念,看完這篇,10分鐘就能
    的頭像 發(fā)表于 04-10 15:18 ?503次閱讀
    10分鐘上手寫(xiě)代碼,LuatOS<b class='flag-5'>協(xié)</b>程輕松掌握!

    協(xié)電機(jī)沖刺北交所上市

    近日,北交所網(wǎng)站顯示,常州三協(xié)電機(jī)股份有限公司(以下簡(jiǎn)稱“三協(xié)電機(jī)”)答復(fù)了第二輪問(wèn)詢函。三協(xié)電機(jī)此前于2023年12月29日IPO申請(qǐng)獲北交所受理。
    的頭像 發(fā)表于 03-28 17:53 ?1766次閱讀

    進(jìn)程、線程、協(xié)程傻傻分不清?一文帶你徹底扒光它們的\"底褲\"!

    :\"我去關(guān)火!\"( yield 控制權(quán)) 代碼示例(Python異步爬蟲(chóng)): python import asyncio import aiohttp ? async def fetch
    發(fā)表于 03-26 09:27

    零基礎(chǔ)入門(mén):如何在樹(shù)莓派上編寫(xiě)和運(yùn)行Python程序?

    在這篇文章中,我將為你簡(jiǎn)要介紹Python程序是什么、Python程序可以用來(lái)做什么,以及如何在RaspberryPi上編寫(xiě)和運(yùn)行一個(gè)簡(jiǎn)單Python程序。什么是
    的頭像 發(fā)表于 03-25 09:27 ?1547次閱讀
    零基礎(chǔ)入門(mén):如何在樹(shù)莓派上編寫(xiě)和運(yùn)行<b class='flag-5'>Python</b>程序?

    深度學(xué)習(xí)入門(mén):簡(jiǎn)單神經(jīng)網(wǎng)絡(luò)的構(gòu)建與實(shí)現(xiàn)

    深度學(xué)習(xí)中,神經(jīng)網(wǎng)絡(luò)是核心模型。今天我們用 Python 和 NumPy 構(gòu)建一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)。 神經(jīng)網(wǎng)絡(luò)由多個(gè)神經(jīng)元組成,神經(jīng)元之間通過(guò)權(quán)重連接。我們構(gòu)建一個(gè)包含輸入層、隱藏層和輸出層的簡(jiǎn)單
    的頭像 發(fā)表于 01-23 13:52 ?854次閱讀

    華為云 Flexus X 實(shí)例下的場(chǎng)景體驗(yàn)——小企業(yè)使用 Python 語(yǔ)言——超迅速搭建簡(jiǎn)單公網(wǎng) API 接口服務(wù)

    ? 前言 小企業(yè)為了快速搞定一些接口功能如果不使用 Python 的話相對(duì)來(lái)說(shuō)復(fù)雜度還是很高的,這里我來(lái)通過(guò)【華為云 Flexus X 實(shí)例】來(lái)迅速的搭建一個(gè) Python 的 WebApi 示例
    的頭像 發(fā)表于 12-27 13:46 ?859次閱讀
    華為云 Flexus X 實(shí)例下的場(chǎng)景體驗(yàn)——小企業(yè)使用 <b class='flag-5'>Python</b> 語(yǔ)言——超迅速搭建<b class='flag-5'>簡(jiǎn)單</b>公網(wǎng) API 接口服務(wù)