Для чего предназначен оператор python «with»?
Я наткнулся на питонаwith
заявление впервые сегодня. Я слегка использовал Python в течение нескольких месяцев и даже не знал о его существовании! Учитывая его немного неясный статус, я подумал, что стоит спросить:
with
заявление предназначено для использования для?Для чего ты это используешь?Есть ли какие-то ошибки, о которых мне нужно знать, или общие анти-паттерны, связанные с их использованием? Любые случаи, когда лучше использоватьtry..finally
чемwith
?Почему это не используется более широко?Какие классы стандартной библиотеки совместимы с ним?