1.1 Открытие файла
Работать с файлами в Python — одно удовольствие, поскольку это сделано довольно просто и интуитивно. Мы сейчас говорим не о создании или перемещении файлов на диске, а о чтении и записи содержимого файлов.
Работа с содержимым файла обычно проходит по следующей схеме:
Открытие файла
Работа с данными файла
Закрытие файла
Пример чтения всего содержимого файла:
file = open('example.txt', 'r')
content = file.read()
print(content)
file.close()
Функция open используется для открытия файла. Она принимает два основных аргумента: имя файла и режим доступа. Функция возвращает объект файла, который затем можно использовать для выполнения операций чтения и записи.
Пример:
file = open('example.txt', 'r')
Если указано только имя файла, он будет искаться в текущей рабочей директории программы. Если указано полное имя файла, то будет обращение по указанному пути.
1.2 Режимы доступа
Второй параметр в функции open() обозначает режим работы с файлом. Режимы доступа определяют, какие операции можно выполнять с файлом (чтение, запись и т.д.).
Вот основные режимы доступа:
Read— чтение.Write— запись.Append— добавление.
Существует несколько вариаций этих режимов:
- 'r': Открытие файла для чтения (режим по умолчанию). Файл должен существовать.
- 'w': Открытие файла для записи. Содержимое файла будет удалено. Если файл не существует, он будет создан.
- 'a': Открытие файла для добавления. Данные будут добавлены в конец файла. Если файл не существует, он будет создан.
- 'r+': Открытие файла для чтения и записи. Файл должен существовать.
- 'w+': Открытие файла для чтения и записи. Содержимое файла будет удалено. Если файл не существует, он будет создан.
- 'a+': Открытие файла для чтения и добавления. Данные будут добавлены в конец файла. Если файл не существует, он будет создан.
Пример записи в файл:
Если вы хотите записать данные в файл, то просто укажите w в качестве режима доступа при открытии файла. Обратите внимание, что все старое содержимое файла будет удалено!
file = open('example.txt', 'w')
file.write("Hello, World!")
file.close()
Пример добавления в файл:
Если вы не хотите удалять содержимое файла, а просто хотите что-то дописать в его конец, то вам нужно указать a в качестве режима доступа к файлу.
file = open('example.txt', 'a')
file.write("\nAppended text.")
file.close()
Важно! Если вы пишете в файл, и его еще не существует, то он будет создан автоматически. Но если вы попытаетесь прочитать данные из несуществующего файла, возникнет исключение.
1.3 Закрытие файла
Каждый раз, когда вы открываете файл, операционная система проверяет ваши права на доступ к файлу и помечает его как используемый вашей программой. Для работы с файлом выделяется специальный ресурс — handler.
Количество handler'ов, которые может получить ваша программа, ограничено. Это значит, что вы можете держать открытыми только несколько сотен файлов одновременно. Кажется, что это много, но если ваша программа работает на сервере месяцами и каждый день что-то читает и пишет в файлы, то этот лимит можно выбрать очень быстро.
Поэтому после того как вы закончили работать с файлом, его нужно закрыть — вызвать метод close(). Таким образом, вы сообщаете операционной системе, что больше не нуждаетесь в этом файле, и его handler вам не нужен.
Закрытие файла
После завершения работы с файлом его необходимо закрыть, чтобы освободить системные ресурсы. Для этого используется метод close().
file = open('example.txt', 'r')
# Выполнение операций с файлом
file.close()
Каждый файл, который вы открыли для чтения или записи, должен быть закрыт. Не забывайте вызывать метод close().
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ