91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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中關(guān)于retrying庫(kù)的使用

麥辣雞腿堡 ? 來(lái)源:Python都知道 ? 作者:了不起 ? 2023-11-14 11:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編程的時(shí)候,我們難免會(huì)遇到一些不可靠的情況,比如網(wǎng)絡(luò)請(qǐng)求失敗,數(shù)據(jù)庫(kù)連接超時(shí)等等。這些不確定性會(huì)讓我們的程序容易出現(xiàn)各種錯(cuò)誤和異常。那么如何來(lái)增加程序的容錯(cuò)性和健壯性呢?

可能大多數(shù)人會(huì)想到使用try except來(lái)進(jìn)行異常捕捉進(jìn)行失敗重試(Retry)。雖然try-escept一個(gè)非常常見(jiàn)和有效的方式來(lái)增強(qiáng)程序穩(wěn)定性,但是可能一不小心就會(huì)造成棧溢出。

所以接下來(lái)我就來(lái)介紹一個(gè)另外的一個(gè)專(zhuān)門(mén)用于失敗重試的庫(kù):retrying。

定義

Python生態(tài)中,retrying庫(kù)提供了非常便捷的裝飾器和函數(shù)來(lái)幫助我們輕松添加失敗重試機(jī)制。它可以自定義重試策略、停止條件、等待間隔等,對(duì)各種異常進(jìn)行捕捉處理。使用retrying可以大大減少我們重復(fù)編寫(xiě)失敗重試輪詢的代碼量。

下載retrying

pip install retrying

無(wú)參數(shù)重試

我們可以直接在函數(shù)上使用裝飾器@retry來(lái)進(jìn)行失敗重試

import retrying
@retry
def func():
    for item in range(0,100):
        result=item / 0
        print(result)
        return result

func()

但是這種方式并不建議使用,就像上面的代碼,我們都知道0作為除數(shù)就會(huì)報(bào)錯(cuò),在上面的func函數(shù)中,因?yàn)榧恿?code>@retry裝飾器進(jìn)行失敗重試,這樣就就會(huì)進(jìn)入一個(gè)死循環(huán)一直失敗一直重試。

所以我們?cè)谶M(jìn)行失敗重試的時(shí)候最好是需要加上一些參數(shù)來(lái)限制失敗重試。

聲明:本文內(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)投訴
  • 編程
    +關(guān)注

    關(guān)注

    90

    文章

    3716

    瀏覽量

    97198
  • 數(shù)據(jù)庫(kù)
    +關(guān)注

    關(guān)注

    7

    文章

    4020

    瀏覽量

    68364
  • python
    +關(guān)注

    關(guān)注

    57

    文章

    4876

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Python如何管理所用的全部依賴庫(kù)

    Python 如何實(shí)現(xiàn)自動(dòng)導(dǎo)入缺失的庫(kù)?》 ,我提到了一種常規(guī)的方法: pip freeze requirements.txt 這種方法用起來(lái)方便,但有幾點(diǎn)不足: 它搜索依賴
    發(fā)表于 11-21 11:16 ?1933次閱讀
    <b class='flag-5'>Python</b>如何管理所用的全部依賴<b class='flag-5'>庫(kù)</b>

    自定義Python PyPI存儲(chǔ)庫(kù)

    軟件包的依賴關(guān)系,而不考慮版本棄用或最新的向后不兼容版本。當(dāng)然,這可以通過(guò)requirements.txt定義版本來(lái)完成,但是要確保我們得到的每個(gè)軟件包都像我們期望的那樣,最好使用自定義存儲(chǔ)庫(kù)
    發(fā)表于 09-14 15:59

    關(guān)于Python編程入門(mén)系列教程》說(shuō)明及教程匯總

    成為了我們了解人工智能的首選編程軟件。二、關(guān)于教程本教程以純軟件的編程為主,并不涉及任何的硬件部分。程序編寫(xiě)部分以Mind+軟件的“Python 模式”為開(kāi)發(fā)工具(自帶基于Python
    發(fā)表于 06-23 10:10

    ADM1266 Python庫(kù)

    ADM1266 Python庫(kù)
    發(fā)表于 03-23 15:47 ?1次下載
    ADM1266 <b class='flag-5'>Python</b><b class='flag-5'>庫(kù)</b>

    詳解Python的Pandas和Numpy庫(kù)

    pandas、numpy是Python數(shù)據(jù)科學(xué)中非常常用的庫(kù),numpy是Python的數(shù)值計(jì)算擴(kuò)展,專(zhuān)門(mén)用來(lái)處理矩陣,它的運(yùn)算效率比列表更高效。
    的頭像 發(fā)表于 05-25 12:49 ?4032次閱讀

    關(guān)于python中非常實(shí)用的一個(gè)圖像處理庫(kù) 1

    PIL:Python Imaging Library,是Python環(huán)境下最受歡迎的圖像處理庫(kù),木有之一。然而,Python2.7之后不再
    的頭像 發(fā)表于 02-08 17:18 ?2129次閱讀

    關(guān)于python中非常實(shí)用的一個(gè)圖像處理庫(kù) 2

    PIL:Python Imaging Library,是Python環(huán)境下最受歡迎的圖像處理庫(kù),木有之一。然而,Python2.7之后不再
    的頭像 發(fā)表于 02-08 17:18 ?1730次閱讀

    如何安裝常用Python庫(kù)

    Python作為一種流行的編程語(yǔ)言,擁有豐富的第三方庫(kù)資源,這些庫(kù)可以幫助開(kāi)發(fā)者輕松實(shí)現(xiàn)各種功能,從數(shù)據(jù)分析到Web開(kāi)發(fā),從機(jī)器學(xué)習(xí)到圖像處理,涵蓋了各個(gè)領(lǐng)域。
    的頭像 發(fā)表于 04-14 12:11 ?2013次閱讀

    Pythontelnetlib模塊的基本使用

    telnetlib 是 Python 標(biāo)準(zhǔn)庫(kù)的一個(gè)模塊,它提供了 Telnet 協(xié)議的客戶端功能。使用 telnetlib 模塊,我們可以 Py
    的頭像 發(fā)表于 05-04 14:27 ?9341次閱讀

    TSMaster小功能—Python小程序如何導(dǎo)入外部庫(kù)

    解析器下安裝外部庫(kù)。步驟一TSMaster工具->系統(tǒng)信息->python環(huán)境設(shè)置中選擇打開(kāi)解析器路徑;步驟二該文件路徑輸入cmd,打
    的頭像 發(fā)表于 08-14 10:06 ?2042次閱讀
    TSMaster小功能—<b class='flag-5'>Python</b>小程序如何導(dǎo)入外部<b class='flag-5'>庫(kù)</b>

    python有什么用 如何用python創(chuàng)建數(shù)據(jù)庫(kù)

    開(kāi)發(fā)、游戲開(kāi)發(fā)、機(jī)器學(xué)習(xí)、自然語(yǔ)言處理等領(lǐng)域。 本文中,我們將介紹如何使用Python創(chuàng)建數(shù)據(jù)庫(kù)。首先,讓我們了解一下什么是數(shù)據(jù)庫(kù)。 什么是數(shù)據(jù)庫(kù)
    的頭像 發(fā)表于 08-28 16:41 ?1953次閱讀

    python讀取數(shù)據(jù)庫(kù)數(shù)據(jù) python查詢數(shù)據(jù)庫(kù) python數(shù)據(jù)庫(kù)連接

    ,獲取數(shù)據(jù)庫(kù)的數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行增刪改查等操作。本文將詳細(xì)介紹Python如何連接數(shù)據(jù)庫(kù)、讀取數(shù)據(jù)庫(kù)數(shù)據(jù)以及如何進(jìn)行查詢操作。 一、
    的頭像 發(fā)表于 08-28 17:09 ?3004次閱讀

    Python庫(kù)oloredlogs的使用

    coloredlogs介紹 coloredlogs是一個(gè)Python庫(kù),它允許開(kāi)發(fā)人員控制臺(tái)打印彩色日志。這個(gè)庫(kù)的主要優(yōu)點(diǎn)是它可以很容易地改變?nèi)罩鞠⒌念伾?,從而使日志更易于閱讀和理
    的頭像 發(fā)表于 10-07 11:28 ?1670次閱讀
    <b class='flag-5'>Python</b><b class='flag-5'>庫(kù)</b><b class='flag-5'>中</b>oloredlogs的使用

    Pythonretrying庫(kù)的有參數(shù)重試

    有參數(shù)重試 (1) stop_max_attempt_number retry傳入stop_max_attempt_number參數(shù)后可以指定失敗重試的次數(shù) @retry
    的頭像 發(fā)表于 11-14 11:08 ?1619次閱讀
    <b class='flag-5'>Python</b><b class='flag-5'>中</b><b class='flag-5'>retrying</b><b class='flag-5'>庫(kù)</b>的有參數(shù)重試

    python如何引入math庫(kù)

    Python,要使用math庫(kù),首先需要先引入它。math庫(kù)Python的一個(gè)標(biāo)準(zhǔn)
    的頭像 發(fā)表于 11-22 11:03 ?6010次閱讀