Что гарантирует конструкция with open("data.csv", "r") as f: при чтении файла?
AФайл будет автоматически создан, если его нет
BФайл будет автоматически закрыт после выхода из блока, даже если внутри возникнет исключение
CФайл целиком загрузится в память автоматически без вызова
f.read()DВсегда будет использована кодировка
utf-8 без указания параметровПравильный ответ.
with гарантирует корректное закрытие файла после блока.Разбор
Контекстный менеджер with open(...) as f гарантирует, что файл будет закрыт при выходе из блока with, даже если во время чтения или обработки данных произошло исключение. Это снижает риск утечек файловых дескрипторов и проблем с блокировками файлов. Кодировка по умолчанию не фиксируется with — её нужно задавать через encoding=... при необходимости.
Проверь себя · 1/3разбор после ответа
В файле
events.json лежит JSON-текст. Как получить Python-объект из этого файла?Ещё вопросы по теме «Работа с файлами: JSON и CSV»
- Вы сохраняете результат анализа в файл отчёта. Что произойдёт, если выполнить `open("report.csv", "w")`, когда `report.csv` уже существует?
- Есть строка `text = '{"user_id": 7, "active": true}'`. Что вернёт `json.loads(text)`?
- Вы читаете CSV с заголовком через `csv.DictReader(f)`. Что представляет собой `row` внутри цикла `for row in csv.DictReader(f):`?
- Вы хотите дописывать строки в файл лога `errors.log`, не удаляя то, что уже записано. Как открыть файл?
- При чтении `config.json` с кириллицей на некоторых системах получаете `UnicodeDecodeError`. Какой вариант чтения наиболее устойчивый?
- Все вопросы по «Работа с файлами: JSON и CSV» →