Теория:
Для обработки большого количества данных, полученных в ходе решения практических задач, удобно не вводить данные вручную, а считывать их из заранее подготовленных файлов. Как правило, в учебных задачах данные хранятся в текстовых файлах, т. е. в файлах с расширением \(.txt\).
Работе с данными из такого файла предшествует открытие файла.
Работе с данными из такого файла предшествует открытие файла.
\(f= open(‘27\)_\(primer.txt’)\), где \(27\)_\(primer.txt\) — имя файла, содержащего данные. Для функции open — это обязательный аргумент.
Имя файла, как ты помнишь из курса изучения организации файловой системы, может быто относительным или абсолютным. Конечно, удобно хранить считываемый файл в одной директории с программой, которая его обрабатывает, в таком случае достаточно указать только имя файла. Если же такая ситуация невозможна, то в качестве аргумента функции open нужно указать полное имя файла.
Например, так: C:\Users\Даниил\Desktop\27_primer.txt.

Рис. \(1\). Открытие файла
На скриншоте рабочего стола ты видишь расположение файла 27_primer.txt, его содержание, фрагмент программы, которая открывает файл по его полному имени и выводит первое из чисел, содержащихся в этом файле.
Поясним ещё некоторые важные моменты этой небольшой программы.
Перед указанием полного имени файла стоит символ «r» — он отключает экранирование, иначе компилятор учтёт символы «\» как служебные и укажет на синтаксическую ошибку их использования.
Если ты предполагаешь, что в файле могут находиться символы кириллицы (буквы русского написания), то в необязательный аргумент encoding нужно передать название кодировки. В нашем примере это кодировка \(utf\)-\(8\).
Метод readline: читает строку из файла. О нём речь будет ниже.
Часть аргументов функции open здесь не описана, так как значения их применены по умолчанию.
Опишем эти специальные символы, определяющие режим открытия файла.

Рис. \(2\). Режимы открытия файлов
Открытый файл должен быть обязательно закрыт по завершении всех манипуляций с файлом для того, чтобы избежать потери информации.
Как правило, в начале работы с файлом открывают исходный файл и файл, в который будет записана изменённая информация.
Как правило, в начале работы с файлом открывают исходный файл и файл, в который будет записана изменённая информация.
\(f=open('input.txt','r')\)
\(c=open('output.txt','w')\)
Обрати внимание, что файлы \(f\) и \(c\) открыты с разными аргументами, один из них открыт на чтение, другой — на запись.
По окончании работы с файлами оба файла закрывают. Для этого используют метод closed или close().
Источники:
Рис. 1. Открытие файла. © ЯКласс.
Рис. 2. Режимы открытия файлов. © ЯКласс.