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