При решении задач связанных с программированием бывает необходимо сохранять информацию. Держать её в переменной всё время не очень удобно — все данные будут потеряны, если программа завершится.
На помощь приходит идея записывать информацию в некий файл. В файл можно записывать и с файла можно считывать уже ранее записанные данные и обрабатывать их любым удобным способом.
Для того, чтобы взаимодействовать с файлом необходимо выбрать режим доступа к нему.
Есть ряд функций по работе с файлами (например, узнать объём файла, его расположение, тип файла, количество строк в нём и так далее), по большому счёту, можно делать только две вещи: считать с файла и записать в него.
Сначала нужно обозначить переменную для работы с файлом, затем прописать ключевое слово-функцию «open()» в скобках которой нужно указать путь до файла (или его имя с расширением, если файл ещё не существует) тем самым открыть его на запись/чтение, и указать режим доступа.
После завершения всех манипуляций с файлом его необходимо закрыть функцией close(). Это необходимо для предотвращения «утечки» памяти.
Помните: в файл мы можем записывать ТОЛЬКО символьные переменные, аналогично с файла мы считываем ТОЛЬКО символы.
Запись в файл
1 2 3 |
file = open("text.txt", "w") #открытие файла за запись file.write("This is text!\n") #запись текста и перенос строки в файл file.close() #закрытие файла |
В переменную file записываем данные по файлу text.txt с режимом доступа «w«, затем записываем одну строку в файл с помощью функции write() и тут же записываем в файл перенос строки, а затем закрываем файл.
Не забывайте преобразовывать ваши переменные, помещаемые в файл, в текстовый вид, например, с помощью функции str().
Чтение из файла
1 2 3 |
file = open("text.txt", "r") #в файле что-то записано line = file.readline() #считываем из файла первую строку file.close() #закрываем файл |
Записываем в переменную данные по файлу text.txt с режимом доступа «r«, затем извлекаем первую строчку из файла и помещаем её в переменную line (переменная будет типа str), а после всех манипуляций закрываем файл функцией close().
Если мы хотим получить всё содержимое файла, то необходимо воспользоваться функцией .readlines(). С помощью этой функции мы считаем абсолютно всё содержимое файла включая символы переноса и прочие специальные символы.
Таким нехитрым образом мы разобрались с «работа с файлами чтение и запись в Python«!