Разница между методами read и readlines при работе с большими файлами заключается в том, что они выполняют разные операции:
- read() считывает и возвращает строку из n символов или весь файл в виде одной строки, если n не указано. vk.com Если файл большой, этот метод может загрузить всё его содержимое в память. stackoverflow.com
- readlines() возвращает список строк, каждая из которых представляет отдельную строку файла. vk.com Если не указано значение n, то возвращаются все строки файла. vk.com Если указано n, то считывается n символов, но n округляется в большую сторону, так что возвращается целая строка. vk.com
Таким образом, для больших файлов предпочтительнее метод readline(), который читает только одну строку за раз. stackoverflow.com