python 高階 with 上下文管理

2021-08-28 00:20:07 字數 485 閱讀 8260

with 上下文管理器 

語法糖⁃ python 提供的一種簡化語法,在編寫**時更加簡潔

⁃ with 就是眾多語法糖中的一種

with 執行原理

⁃ 能通過with進行執行的語句,都是實現了上下文管理器

⁃ 上下文管理器中包含兩個魔法方法 __enter__ 和 __exit__

⁃ __enter__ 方法提供環境的初始化操作

⁃ __exit__ 方法提供了環境的善後操作,一般用來做資源的關閉

__exit__方法中的引數

⁃ __exit__ 方法中提供三個引數,用來接收執行with語句時發生的異常。

⁃ 三個引數分別為 異常資訊型別,異常資訊值和異常回溯資訊

⁃ __exit__ 方法預設返回 false ,預設將異常資訊丟擲

⁃ 可以設定返回值為 true,不將異常資訊丟擲

上下文 上下文棧

全域性 函式 區域性 在執行全域性 前將window確定為全域性執行上下文 對全域性資料進行預處理 var定義的全域性變數 undefined,新增為window的屬性 function宣告的全域性函式 賦值 fun 新增為window的方法 this 賦值 window 開始執行全域性 在呼叫函式...

中斷上下文 程序上下文

在學習與作業系統相關的知識時候,我們經常遇到程序上下文 中斷上下文,看似熟悉又感覺不是特別清晰。這裡我們從如下幾個方面進行描述。上下文是從英文中context翻譯過來的,指的是一種環境。上下文我們看起來不怎麼熟悉,但是我們可以看context的中文翻譯,或者我們能更加的情形些。context n 語...

全域性上下文與上下文

全域性上下文由main函式載入系統的主架構和主事件迴圈和全域性資料構成。是上帝創造世界時,建立的基礎事物。萬物之始,大道至簡,衍化至繁。全域性上下文代表著程式執行所需要的基礎資源。是程式執行的基礎。全域性上下文的特徵是在程式執行期間常駐記憶體。全域性上下文的生命週期和應用程式的生命週期相同。與應用程...