Операции над файлами

Операции над файлами

Limera1n

В программировании мы так или иначе столкнемся с файловыми системами.

Сегодня посмотрим, как мы можем взаимодействовать с файлами.

Для начала посмотрим, как мы можем читать файлы.

Для интерпретатора существует текущая папка, и чтобы узнать, что это за папка, мы можем проделать такое:

Просто pwd, довольно просто, неправда ли?

Дальше в этой папке мы создадим новый файл с помощью команды %%writefile и впишем в него, например, телефонные номера:

Теперь чтобы узнать его параметры в Python есть функция open:

Где TextIOWrapper - тип файла, name - имя, mode - режим чтения r, и определенный код кодировки.

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

Так же отмечу, что по умолчанию интерпретатор создает и открывает файлы в текущей директории.

Объект типа TextIOWrapper содержит внутри себя курсор, который по мере чтения файла бежит вперед, и после того, как мы вызвали функцию read - он добежал до конца, и если теперь мы пропишем file.read(), то ничего не увидим. То есть, если мы пытаемся читать достигнувший конец файл, то мы ничего не увидим.

Но курсором можно управлять:

Функция seek позволяет перемещать курсор.

Посмотрим, какой тип у data:

Ага, мы видим, что это у нас тип str, то есть строка. А если мы хотим, чтобы у нас был список? Для этого мы можем использовать функцию file.readlines:

Теперь у нас тип 'list', а вывод говорит нам, что мы имеем 4 строки.

А что если мы хотим прочитать файл из другой директории?

В таком случае мы можем передать полный путь. Притворимся, что наш файл лежит в другой директории:

После окончания работы над файлом мы можем его закрыть, чтобы не загружать память:


Report Page