Работа с файлом
Открытие файла
Прежде, чем работать с файлом, его надо открыть. Для этого нужно воспользоваться встроенной функцией open():
f = open('text.txt', 'r')
Для нас важны два аргумента у функции: первый, это имя файла. Путь к файлу может быть относительным или абсолютным. Второй аргумент, это режим, в котором мы будем открывать файл.
- 'r' - открытие на чтение (является значением по умолчанию).
- 'w' - открытие на запись, содержимое файла удаляется, если файла не существует, создается новый
- '+' - открытие на чтение и запись
Чтение из файла
Метод read()
Первый - метод read, читающий весь файл целиком, если был вызван без аргументов, и n символов, если был вызван с аргументом (целым числом n).
Пусть файл содержит строчку "Hello".
f.read(1)
Тогда данный скрипт вернет нам "H". Если после этого мы опять применим данную команду, но уже без аргумента:
f.read()
То этот код вернет нам "ello".
Метод readline()
Этот метод считывает одну строку за раз, поэтому при чтении он занимает мало памяти, что больше подходит для больших файлов. Этот метод возвращает строковый объект.
line = f.readline()
Чтобы считать с помощью этого метода весь файл, нужно воспользоваться циклом. При считывании символ новой строки \n
присутствует в конце каждой из строк. Его может не быть лишь в последней строке — это позволяет добиться однозначности: если метод возвращает пустую строку, значит достигнут конец файла; если строка содержит лишь символ \n
, значит это просто очередная строка.
f = open("a.txt") line = f.readline() while line: line = f.readline() f.close()
Метод readlines()
Метод readlines() считывает все строки всего файла и сохраняет их в переменной списка. Метод возвращает список строк.
lines = f.readlines()