Чтение и запись файлов в Python

В Python, работа с файлами является одной из основных задач. Python предоставляет множество встроенных функций для работы с файлами. В этом обзоре мы рассмотрим основные операции с файлами, такие как открытие, чтение, запись и закрытие файлов.

Открытие файла:

В Python, для работы с файлами, сначала нужно открыть файл с помощью функции open(). Функция open() принимает два параметра: имя файла и режим доступа к файлу.

file = open("filename.txt", "r")  # открытие файла для чтения

В приведенном выше примере, "filename.txt" - это имя файла, а "r" - это режим доступа к файлу, который указывает на чтение.

Доступные режимы доступа к файлу:

  • r - Открытие файла для чтения (по умолчанию)
  • w - Открытие файла для записи. Если файл уже существует, его содержимое будет удалено. Если файл не существует, он будет создан.
  • a - Открытие файла для добавления. Если файл уже существует, новые данные будут добавлены в конец файла. Если файл не существует, он будет создан.
  • r+ - Открытие файла для чтения и записи. Если файл уже существует, его содержимое не будет удалено. Если файл не существует, он будет создан.
  • w+ - Открытие файла для чтения и записи. Если файл уже существует, его содержимое будет удалено. Если файл не существует, он будет создан.
  • a+ - Открытие файла для чтения и добавления. Если файл уже существует, новые данные будут добавлены в конец файла. Если файл не существует, он будет создан.

Чтение файла:

После открытия файла, вы можете читать его с помощью метода read().

file = open("filename.txt", "r")
data = file.read()
print(data)
file.close()

В приведенном выше примере, метод read() читает содержимое файла и возвращает его как строку.

Запись в файл:

Для записи данных в файл, сначала нужно открыть файл в режиме "w", "a" или "w+". Затем, вы можете использовать метод write() для записи данных в файл.

file = open("filename.txt", "w")
file.write("Hello, World!")
file.close()

В приведенном выше примере, метод write() записывает строку "Hello, World!" в файл.

Закрытие файла:

После работы с файлом, его нужно закрыть с помощью метода close().

file = open("filename.txt", "r")
data = file.read()
print(data)
file.close()

В приведенном выше примере, метод close() закрывает файл, освобождая все используемые ресурсы.

В Python также есть контекстный менеджер with, который облегчает работу с файлами.

with open("filename.txt", "r") as file:
    data = file.read()
    print(data)

В приведенном выше примере, файл будет автоматически закрыт после выхода из блока with.

Работать с файлами рекомендуется именно с использованием контекстного менеджера with

В Python, вы можете прочитать файл построчно или целиком.

Чтение файла построчно:

Чтобы прочитать файл построчно, вы можете использовать метод readline() или цикл for с методом readline().

with open("filename.txt", "r") as file:
    line = file.readline()
    while line:
        print(line)
        line = file.readline() 

# Вариант с for
with open("filename.txt", "r") as file:
    for line in file:
       print(line)

В приведенном выше примере, метод readline() читает одну строку из файла и возвращает ее. Цикл while продолжает выполняться, пока есть строки для чтения.

Вы можете использовать метод readlines(), который возвращает список строк из файла.

with open("filename.txt", "r") as  file:
    lines = file.readlines()
    for line in lines:
        print(line)

В приведенном выше примере, метод readlines() читает содержимое файла и возвращает его как список строк. Цикл for проходит по списку строк и выводит их на экран.

14 views·1 share