Задача

3/8

Текстовые файлы_002

Теория

 Если текстовый файл разбит на строки и обработка данных предполагает построчную обработку, то считать все данные сразу можно с помощью метода readlines().

Метод файла file.readlines() читает файловый объект построчно, пока не достигнет конца файла EOF,
и возвращает список, содержащий строки файла.

# чтение из файла всех данных в список строк.
sss=f.readlines() 
далее можно обработать этот список в соответствии с требованиями программы.
Необходимо учитывать, что конечный символ новой строки ('\n') сохраняется.
Аналогичный результат можно получить с помощью "связки" методов read() и split():
# чтение из файла всех данных в список строк.
sss=f.read().split('\n') 
только в этом случае в строках не будет символа новой строки. Разницу можно заметить с помощью команды print(*sss)
Помните, что файл может быть слишком большим для того чтобы разместиться полностью в оперативной памяти.
В этом случае лучше считывать и обрабатывать файл кусками. Для этого у метода readlines() есть необязательный параметр sizehint

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

 

Задача

Дан текстовый файл с разбиением на строки. Напишите программу, которая выполнит следующие действия:
  1. Определит  N -количество строк в файле. Необходимо учитывать все строки (в том числе и пустые);
  2. Найди количество непустых строк, в которых первый и последний символы совпадают (строки из одного символа удовлетворяют заданному условию)
Ответы на вопросы запишите в строку через пробел

Попробуйте решить эту задачу двумя способами (используя метод readlines() и используя метод read() в связке с методом split()) 

 
 

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

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