Работа с файлами

Python поддерживает множество различных типов файлов, но условно их можно разделить на два вида: текстовые и бинарные. Текстовые файлы - это к примеру файлы с расширением .csv, .txt, .html, в общем любые файлы, которые сохраняют информацию в текстовом виде. Бинарные файлы - это изображения, аудио и видеофайлы и т.д. В зависимости от типа файла работа с ним может немного отличаться.

 

При работе с файлами для решения олимпиадных задач необходимо соблюдать некоторую последовательность операций:

 

  1. Открытие файлов для записи и чтения с помощью функции open().
  2. Чтение файла построчно с помощью метода readline().
  3. Запись в файл построчно посредством метода write().
  4. Закрытие файлов методом close().

Пример

Найдите сумму чисел \(a\) и \(b\). Для ввода и вывода данных используйте файлы input.txt и output.txt соответственно.

fin = open('input.txt', 'r')
fout = open('output.txt', 'w')

input = lambda: fin.readline().rstrip()
print = lambda value, end='\n': fout.write(f"{value}{end}")

a = int(input())
b = int(input())
ans = a + b
print(f"{ans}")

fin.close()
fout.close()

С помощью лямбда-функций мы переопределили функции input() и print().

Практические задания