Можешь объяснить различные режимы работы с файлами, доступные в функции `open()` Python, и показать, как правильно читать и писать файлы, используя подход с контекстным менеджером? — ДейлиПреп