open()

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

Сигнатура

open(file, mode='r', buffering=-1, encoding=None,
     errors=None, newline=None, closefd=True, opener=None)

Параметры (основные):

  • file — путь к файлу (строка) или дескриптор.

  • mode — режим: 'r' (чтение), 'w' (запись с очисткой), 'a' (дозапись), 'x' (создание), 'b' (бинарный), 't' (текстовый), '+' (чтение и запись).

  • encoding — кодировка текстового файла (обычно 'utf-8').

  • newline — управление переводами строк.

Возвращает: файловый объект.

Примеры

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

with open("note.txt", "w", encoding="utf-8") as f:
    f.write("Привет, Arduino!\n")
    f.write("Вторая строка\n")

Чтение целиком и построчно:

with open("note.txt", "r", encoding="utf-8") as f:
    print(f.read())

with open("note.txt", "r", encoding="utf-8") as f:
    for line in f:
        print(line.rstrip())
Привет, Arduino!
Вторая строка

Привет, Arduino!
Вторая строка

Дозапись ('a'):

with open("log.txt", "a", encoding="utf-8") as f:
    f.write("новое событие\n")

Бинарное чтение:

with open("data.bin", "wb") as f:
    f.write(bytes([0x10, 0x20, 0x30]))

with open("data.bin", "rb") as f:
    data = f.read()
print(list(data))
[16, 32, 48]

Чтение списка строк:

with open("note.txt", "r", encoding="utf-8") as f:
    lines = f.readlines()
print(len(lines), "строк")
2 строк

См. также

Примечание

Описание основано на официальной документации Python (docs.python.org), распространяемой под лицензией PSF License v2. © Python Software Foundation.