Задача

2/7

Чтение данных из файла

Теория

Чтение данных из файла

При чтении текстового файла, поток байтов поступает на вход программы последовательно один за другим, поэтому файл обеспечивает последовательный доступ к данным. То есть, если нам необходимо прочитать 10-е по счету значение из файла, необходимо сначала прочитать предыдущие 9.

Чтение одной строки файла позволяет выполнять метод readline(). Вызывается данный метод для файловой переменной.
Fin = open("input.txt")
s = Fin.readline()

К считываемой строке можно применять различные методы, аналогичные тем, которые применяли при считывании с клавиатуры (split(), map() и пр.). Например, если в строке файла находятся два числа через пробел, то считать их можно следующим образом:
Fin = open("input.txt")
s = Fin.readline().split() # разбили строку по пробелам s = ["2007", "2021"]
a, b = map(int, s)         # ко всем элементам списка s применяем метод int(), 
                           # то есть преобразуем символьную строку в число
# a, b = int(s[0], s[1])   # это то же самое, что и строкой выше
# a, b = [int(x) for x in s] # то же самое только в виде генератора

Метод read() считывает все содержимое из файла и возвращает строку, которая может содержать символы '\n'. Если методу read() передать целочисленный параметр, то будет считано не более заданного количества символов. Например, считывать файл побайтово можно при помощи метода read(1).

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

 
Примечение
При работе в онлайн-компиляторе, который отоюражается при решении задачи, файл находится в том же месте куда сохраняется программа при запуске. Таким образом, для доступа к этому файлу в методе open достаточно указать имя файла (без указания пути). Например, для файла input.txt можно написать просто Fin = open("input.txt"). Имя файла, которое доступно для чтения и которое можно использовать в онлайн компиляторе указано в первой строке.

Задача

В файле input2.txt хранится одна строка целых чисел. Каждое число отделяется от другого одним пробелом. Найдите сумму и среднее арифметическое данных чисел.
В ответе укажите два числа через один пробел, сначала сумму чисел, затем их среднее арифметическое. 

Например: 123 456.7

Выберите правильный ответ, либо введите его в поле ввода

Комментарий учителя