|
|||||||
With ... as - менеджеры контекста
Время создания: 29.07.2019 23:51
Раздел: Разные закладки - Python
Запись: xintrea/mytetra_db_adgaver_new/master/base/1533760958r096zx5r82/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Конструкция with ... as используется для оборачивания выполнения блока инструкций менеджером контекста. Иногда это более удобная конструкция, чем try...except...finally . Синтаксис конструкции with ... as: "with" expression ["as" target] ("," expression ["as" target])* ":" suite Теперь по порядку о том, что происходит при выполнении данного блока:
Если в конструкции with - as было несколько выражений, то это эквивалентно нескольким вложенным конструкциям: with A() as a, B() as b: suite эквивалентно with A() as a: with B() as b: suite Для чего применяется конструкция with ... as? Для гарантии того, что критические функции выполнятся в любом случае. Самый распространённый пример использования этой конструкции - открытие файлов. Я уже рассказывал об открытии файлов с помощью функции open , однако конструкция with ... as, как правило, является более удобной и гарантирует закрытие файла в любом случае. Например: with open('newfile.txt', 'w', encoding='utf-8') as g: d = int(input()) print('1 / {} = {}'.format(d, 1 / d), file=g) И вы можете быть уверены, что файл будет закрыт вне зависимости от того, что введёт пользователь. |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|