From e5abc1fe99340b979b18864d978179f71fe8f5c5 Mon Sep 17 00:00:00 2001 From: vlapa Date: Sat, 13 Jun 2026 20:33:26 +0300 Subject: First --- ...65\320\275\320\265\320\264\320\266\320\265\321\200\321\213.md" | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 "PYTHON/\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\275\321\213\320\265 \320\274\320\265\320\275\320\265\320\264\320\266\320\265\321\200\321\213.md" (limited to 'PYTHON/Контекстные менеджеры.md') diff --git "a/PYTHON/\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\275\321\213\320\265 \320\274\320\265\320\275\320\265\320\264\320\266\320\265\321\200\321\213.md" "b/PYTHON/\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\275\321\213\320\265 \320\274\320\265\320\275\320\265\320\264\320\266\320\265\321\200\321\213.md" new file mode 100644 index 0000000..f685d3b --- /dev/null +++ "b/PYTHON/\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\275\321\213\320\265 \320\274\320\265\320\275\320\265\320\264\320\266\320\265\321\200\321\213.md" @@ -0,0 +1,8 @@ +Контекстные менеджеры позволяют задать поведение при работе с конструкцией with: при входе и выходе из блока. Это упрощает работу с ресурсами в части их захвата и освобождения; транзакциями, когда нужно либо полностью закончить транзакцию, либо откатить ее целиком. + +Простейшей функцией, использующей данный принцип, является функция open. Каждый раз, когда мы открываем файл, нам необходимо его закрыть, чтобы вытолкнуть выходные данные на диск (на самом деле Python вызывает метод close автоматически, но явное его использование является хорошим тоном). + +Чтобы каждый раз не вызывать метод close, мы можем воспользоваться контекстным менеджером функции open, который автоматически закроет файл после выхода из блока. + +![[Pasted image 20250501031423.png]] + -- cgit v1.2.3