首頁 >後端開發 >Python教學 >你應該在 Python 程式碼中「請求寬恕,而不是許可」嗎?

你應該在 Python 程式碼中「請求寬恕,而不是許可」嗎?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-10 11:07:16939瀏覽

Should You

「請求寬恕而不是許可」背後的哲學

「請求寬恕而不是許可」這句話經常在編碼中用來描述程式設計優先執行操作而不是事先檢查權限的風格。

在 Pythonic 程式碼中,這項原則表明,與其使用條件語句來驗證屬性的存在性或操作的有效性,不如嘗試操作並處理任何由此產生的異常,這樣會更有效。

範例場景與「請求寬恕」 "方法

考慮一個帶有可選屬性欄的類別。 「請求寬恕」方法建議:

if foo.bar:
    # Do stuff

「請求寬恕」的參數寬恕》
try:
    foo.bar  # Attempt to access the attribute
    # Do stuff    
except AttributeError:
    # Handle the error if the attribute doesn't exist

並發:
    在多執行緒環境中或處理外部資源時,系統的狀態可以在權限檢查和操作之間發生變化。 🎜>
  • 精確度: 定義特定的權限檢查可能很困難,導致誤報或誤報
  • 可選屬性的例外
對於可選屬性,可接受的Pythonic 方法是將屬性初始化為None並明確檢查其存在:

這確保程式碼清晰且意圖處理可選屬性是明確的。

以上是你應該在 Python 程式碼中「請求寬恕,而不是許可」嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn