Памятка по операциям с файлами Python
Краткий справочник по чтению и записи файлов на Python. Освойте открытые режимы, менеджеры контекста и построчное чтение.
Методы чтения и записи файлов
Основные методы, используемые для чтения и записи текстовых или двоичных данных из файловых потоков.
| Метод/Функция | Синтаксис | Описание |
|---|---|---|
| read() | file.read(size=-1) | Считывает и возвращает содержимое файла размером до байтов. Если размер отрицателен или опущен, читается весь файл. |
| readline() | file.readline() | Считывает одну строку из файла. Возвращает пустую строку в конце файла (EOF). |
| readlines() | file.readlines() | Считывает все оставшиеся строки из файла и возвращает их в виде списка строк. |
| write() | file.write(string) | Записывает указанную строку в файл и возвращает количество записанных символов. |
| writelines() | file.writelines(lines) | Записывает список строк/строк в файл. Не добавляет новые строки автоматически. |
Управление контекстом файла и состоянием
Управление открытием, закрытием, навигацией и очисткой ресурсов.
| Метод/Функция | Синтаксис | Описание |
|---|---|---|
| open() | open(file, mode="r", encoding=None) | Открывает путь к файлу и возвращает поток объектов файла. |
| close() | file.close() | Закрывает файловый поток. Необходимо освободить системные ресурсы, если не используется контекстный менеджер. |
| seek() | file.seek(offset, whence=0) | Перемещает указатель курсора файла в указанную позицию байта относительно того, откуда. |
| tell() | file.tell() | Возвращает текущую позицию байта файлового курсора. |
| flush() | file.flush() | Немедленно сбрасывает буферы записи файлового потока в хранилище. |
Интерактивный демонстрационный сценарий
# read()
file.read(size=-1)
# readline()
file.readline()
# readlines()
file.readlines()
# write()
file.write(string)
# writelines()
file.writelines(lines)
# open()
open(file, mode="r", encoding=None)
# close()
file.close()
# seek()
file.seek(offset, whence=0)
# tell()
file.tell()
# flush()
file.flush()Часто задаваемые вопросы
Почему рекомендуется использовать оператор with?
Оператор with действует как менеджер контекста, гарантируя автоматическое закрытие файла при выходе из блока, даже если возникают исключения.
В чем разница между режимами r+ и w+?
r+ открывает файл как для чтения, так и для записи (без усечения файла). w+ открывает его для чтения и записи, но сначала обрезает (стирает) содержимое файла.
Связанные темы
Справочное руководство по встроенным функциям Python. Узнайте, как использовать print, len, range, enumerate, zip, map, filter и многое другое.
Памятка по встроенным исключениям и типам ошибок PythonСправочное руководство по распространённым типам ошибок Python. Узнайте, как отлаживать ValueError, TypeError, IndexError, KeyError и создавать исключения.
Памятка по коллекциям и структурам данных PythonПолное руководство по модулю коллекций Python и собственным структурам данных. Изучите списки, словари, наборы, кортежи, деки и именованные кортежи.
Рекомендуемые ресурсы Python
Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.
Ввод-вывод файлов Python
Узнайте, как читать и записывать файлы на Python. Освойте open(), read(), write() и менеджеры контекста для безопасной обработки файловых операций без утечек ресурсов.
Как прочитать файл на Python
Узнайте, как читать файлы на Python. Освойте оператор open, readline, readlines и безопасную обработку исключений файлов.
Python против JavaScript: какой язык программирования лучше?
Всестороннее сравнение Python и JavaScript. Изучите синтаксические различия, производительность, варианты использования (серверная и клиентская части) и примеры кодирования.