background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "#51. Функция open. Чтение данных из файла | Python для начинающих"

input logo icon
Теги видео
|

Теги видео

файлы python
работа с файлами
python file input
python
python 3
питон
пайтон
питон уроки
уроки пайтон
Уроки Пайтона
Пайтон
Работа с файлами
анализ данных
анализ данных на питоне
Python Files encoding
Python
Python Files
File io
Python File io
Python Read File
Python Write File
Read File
Python File i/o
Python File Read
Python File Write
Python Tutorial
Python Tutorials
file i/o tutorial
Python open
open file
Python open file
Субтитры
|

Субтитры

subtitles menu arrow
  • enАнглийский
Скачать
00:00:02
балакирев и мы продолжаем базовый курс
00:00:04
по языку python на этом занятии мы с
00:00:06
вами научимся читать данные из файлов
00:00:09
думаю все прекрасно понимают что такое
00:00:11
файлы и что они хранятся как правило на
00:00:13
внешних носителях часто это жесткий диск
00:00:16
устройства или флеш память или ssd диск
00:00:18
бывает и другие носители главная
00:00:21
особенность файлов сохранение информации
00:00:23
после отключения устройства от питания
00:00:25
разумеется язык python умеет работать с
00:00:28
файлами и начнем знакомство вот с такой
00:00:31
функции она называется окон и открывает
00:00:34
указанный файл на чтение или запись по
00:00:37
умолчанию на чтения астана и и параметра
00:00:40
такие вот файл это путь к файлу он
00:00:43
прописывается первым аргументом потом
00:00:45
mode это режим доступа то есть либо
00:00:47
чтения либо запись но а encoding это
00:00:50
кодировка файла чтобы воспользоваться
00:00:52
этой функцией нужно правильно записывать
00:00:54
вот этот первый аргумент путь к файлу
00:00:56
давайте посмотрим различные варианты его
00:00:59
определения и представим что у нас есть
00:01:01
файл икс один пай где мы и пишем нашу
00:01:04
программу тогда чтобы обратиться вот к
00:01:07
этому файлу мая file.txt
00:01:09
из вот этого вот файла из программного
00:01:12
файла икс один пай мы должны указать вот
00:01:16
этот первый аргумент а есть путь к файлу
00:01:17
следующим образом можно просто прописать
00:01:20
мая file.txt
00:01:21
потому что этот файл находится в том же
00:01:23
каталоге что и исполняемый файл а можем
00:01:26
указать пол и абсолютный путь то есть
00:01:29
указать диск d далее каталог об ну и
00:01:32
соответственно файл и получится вот
00:01:34
такой вот абсолютный путь или тот же
00:01:36
самый путь можно прописать другими
00:01:37
разделителями обратный слеш это одно и
00:01:40
то же но вот такой вариант более
00:01:42
предпочтителен тому что он будет
00:01:43
работать как под операционной системой
00:01:45
windows так и под linux а вот такой
00:01:47
способ запись принят для операционной
00:01:49
системы windows поэтому обычно
00:01:51
прописывают абсолютной пути и вообще
00:01:53
разделители между каталогами вот эти вот
00:01:56
образом обратный слеш теперь давайте
00:01:58
предположим что мы хотим обратиться
00:02:00
водка этого файла и мечты xt как это
00:02:03
можно было бы сделать значит если мы
00:02:05
используем относительный путь таз от
00:02:07
веса должны указать каталог и мяч из
00:02:09
потому что находится в той же папке об
00:02:12
что и исполняемый файл икс один пай то
00:02:14
есть а не на том уровне находится
00:02:16
поэтому просто пишем каталог и мяч с ну
00:02:19
а далее указываю вот этот файл и мечты
00:02:21
xt разделитель обратный слеш и у нас
00:02:24
получается вот такой вот относительный
00:02:26
путь к файлу ну либо можем также указать
00:02:29
абсолютный пусть он будет в данном
00:02:31
случае выглядеть так диска d каталог об
00:02:34
вот этот каталог потом идет каталог ими
00:02:36
час ну и наконец сам файл и мечта xt
00:02:39
теперь предположим что мы хотим
00:02:41
обратиться водка этого файла а у txt
00:02:43
тогда относительный путь можно записать
00:02:45
вот так вот и здесь две вот эти вот
00:02:48
точки означают что мы выходим вот из
00:02:50
этого каталога об и обращаемся уже вот к
00:02:53
этому файлу а у txt то есть две точки
00:02:56
это обратиться к родительскому каталогу
00:02:59
но абсолютный путь здесь простой диск d
00:03:01
iso-файл out xt ну и наконец чтобы взять
00:03:05
вот этот файл prt дат мы соответствие
00:03:08
должны прописать вот такую-то
00:03:09
относительный путь обратиться опять же
00:03:11
здесь к родительскому каталогу затем
00:03:14
указать каталог parent ну и дальше файл
00:03:18
пдд либо вот такой вот абсолютный путь
00:03:21
вот принцип по которому прописывает
00:03:24
спаси к файлам в нашем случае мы будем
00:03:26
обращаться от кроком и текстовый файл
00:03:29
май file.txt который находится в том же
00:03:31
каталоге что исполняемый файл x 15
00:03:34
поэтому путь к ему можно прописать вот в
00:03:37
таком вот виде мая file.txt я перейду
00:03:39
сюда в программу по и charm и здесь
00:03:42
запишу следующую строчку воспользуемся
00:03:44
функция append далее укажем имя файла
00:03:47
которым мы обращаемся это будет файл мая
00:03:50
file.txt вот обратите внимание у нас
00:03:52
здесь от в рабочем каталоге как раз
00:03:55
находится этот файл мая file.txt
00:03:57
вот статьи вот содержимым соответственно
00:04:00
его и будем читать и здесь мой как раз
00:04:02
указываем путь маршрут к этому файлу в
00:04:05
принципе этого достаточно самом простом
00:04:07
варианте этого достаточно и если сейчас
00:04:09
запустить программу то никаких ошибок не
00:04:12
будет этот файл был открыт ну и
00:04:14
соответственно когда программа закрылась
00:04:16
то файл автоматически тоже закрылся если
00:04:19
же мы укажем здесь неверный путь
00:04:20
например как этот мой файл 2 то у нас
00:04:23
возникнет ошибка file not found р то
00:04:26
есть не был найден файл позже ему видел
00:04:28
как можно избежать такой ошибки чтобы
00:04:30
программа не прерывалась если даже файл
00:04:32
указан неверно и так вот этот функция
00:04:35
окон по умолчанию открывает файл на
00:04:37
чтение это значит что в этом режиме мы
00:04:40
можем только считывать информацию из
00:04:42
файла но не записывать тогда как
00:04:44
прочитать эти данные из файла для этого
00:04:46
существует несколько методов и вот у
00:04:49
этого файлового объекта то есть
00:04:50
переменных файл ссылается на файловый
00:04:52
объект есть вот такой то метод ride если
00:04:55
мы его прописываем без каких-либо
00:04:56
аргументов то читается все содержимое
00:04:58
файла и давайте сразу выведем в консоль
00:05:01
то что будет прочитано запустим
00:05:04
программу да и и здесь вот конечно мы
00:05:06
должны указать в мае файл запустим
00:05:08
программу и видим что наш файл
00:05:10
прочитался но отображает все статьи
00:05:13
кракозябрами это из-за несовпадений
00:05:15
кодировок вот этот файл он сейчас имеет
00:05:18
кодировку utf8 тогда как вот этот метод
00:05:21
a ride он читает от по крайней у меня в
00:05:24
данном случае файл в кодировке windows
00:05:26
1251 газировка нужно поменять чтобы
00:05:29
здесь не было никаких кракозябр of
00:05:31
поэтому вы здесь вот вторым аргументом я
00:05:33
явно укажу кодировку в которой записан
00:05:36
то тот файл utf-8 опять же запустим
00:05:39
программу и теперь уже никаких проблем
00:05:41
нету мы спокойно можем читать вот этот
00:05:44
вот текст но что если мы хотим из файл и
00:05:46
прочитать не всю информацию а всего
00:05:48
несколько символов для этого за счет в
00:05:51
методе рыб мы должны указать
00:05:53
максимальное количество символов которые
00:05:55
хотим прочитать данном случае это 4
00:05:57
запустим программу и здесь у нас
00:06:00
отображается только три символа хотя мы
00:06:02
указали прочитать 4 дело в том что файл
00:06:05
в кодировке utf-8 можно присутствовать 1
00:06:07
вот этот невидимый символ вот с таким
00:06:10
вот кодом поэтому когда вот этот метрик
00:06:12
первый раз отработал он прочитал четыре
00:06:14
символа но на экране мы увидели только у
00:06:17
то есть вот 1 и 3 то есть вот они как
00:06:19
раз здесь присутствуют и сам и еще раз
00:06:21
вызовем вот этот метод ориса значением 4
00:06:24
то соответственно будет прочитано и
00:06:25
следующий 4 символа и мы увидим вот эти
00:06:29
вот символы скажи давайте в этом
00:06:32
убедимся я продублирую эту строчку
00:06:34
запустим программу еще раз и как раз вот
00:06:37
этот к же мы здесь видим то есть все
00:06:39
работает вот именно так образом причем
00:06:41
вот это вот зеленая стрелочка которая
00:06:43
здесь нарисована это так называемая
00:06:45
файловая позиция она указывает с какого
00:06:48
символа считывать данные когда мы снова
00:06:51
вызываем метод для чтения данных из
00:06:54
файла то есть вызывая каждый раз вот
00:06:56
этот метод a ride мы не самого начала
00:06:59
считываем данное а с того места на
00:07:01
который указывает файловую позиция то
00:07:03
есть прочитали 1 раз 4 символа дальше
00:07:06
читаем в следующий 4 сеула потом читаем
00:07:08
следующий 4 символа и так далее то есть
00:07:10
вызываем метод a ride с аргументом 4 мы
00:07:13
каждый раз при четыре символа так вот
00:07:15
будем считывать и все благодаря вот этой
00:07:17
вот файловые позиции а когда дойдем до
00:07:20
конца файла то здесь у нас будет такой
00:07:22
специальный символ называется и of то
00:07:25
есть end of file этот символ
00:07:27
сигнализирует о достижении конца файла
00:07:29
при необходимости мы в программе можем
00:07:32
управлять положением вот эту вот
00:07:35
файловые позиция для этого существует
00:07:37
такой специальный этот сик и мы здесь
00:07:39
указывает значение куда нужно установить
00:07:42
файловую позицию ну например от в нашей
00:07:45
программе если мы после того как
00:07:47
прочитали 1 4 символа возвратим файлу и
00:07:50
позицию в начало я напишу сик от нуля то
00:07:53
есть ноль это начало файла то есть файлы
00:07:56
позиции снова начала переместиться тогда
00:07:59
вот этот вот метод орет от 4 он каждый
00:08:02
раз будет читать одни и те же данные
00:08:04
запустим программу и да действительно мы
00:08:06
видим что каждый раз читаем а дети же
00:08:08
всего как раз благодаря тому что мы
00:08:11
переместили файлу и позицию в начало
00:08:13
файла а вот такой вот метод тел он
00:08:16
соответствовал вращает текущую файловую
00:08:18
позицию ну давайте отобразим здесь в
00:08:21
консоли тоже запустим программу и видим
00:08:23
что текущий файл и позиция равна 9
00:08:26
кстати обратите внимание несмотря на то
00:08:29
что мы прочитали всего четыре символа
00:08:31
файловую позиция равна 9 дело в том что
00:08:34
в кодировке utf-8 каждая буква русского
00:08:37
алфавита представляется двумя байтами а
00:08:40
файловую позиций указывает и номер
00:08:42
символа а номер байда поэтому когда мы
00:08:45
прочитали первые четыре символа то
00:08:47
файловой позиции указывает на номер
00:08:50
байта со значением 9 они со значением 4
00:08:54
вот это тоже следует иметь в виду при
00:08:56
работе с файлами отлично теперь мы с
00:08:58
вами знаем каким образом можно прочитать
00:09:00
либо все содержимое файла либо несколько
00:09:03
символов но что если мы хотим из файл
00:09:05
прочитать первую строку для этого есть
00:09:08
специальный метод называется red line
00:09:10
вот это вот я все уберу запустим
00:09:13
программу и соответственно у нас
00:09:15
читается только 1 строка причем когда мы
00:09:17
читаем первую строку то символом конца
00:09:20
от этого строки является специальный
00:09:23
символ отзывается так слеш н то есть
00:09:26
символ перенос строки либо когда мы
00:09:28
доходим до конца файла то есть вот этот
00:09:31
метод red line он понимает что строка
00:09:33
закончилась когда встречается у такой
00:09:36
вот символ переноса строки либо когда мы
00:09:39
доходим до конца файла соответственно
00:09:41
если мы дважды вызываем этот метод a
00:09:43
ride like to прочитаю две строчки и вот
00:09:46
здесь вот когда мы отображали эти две
00:09:48
строчки эти стройки отобразились через
00:09:51
вот это вот пустую строку почему здесь
00:09:53
появилась пустая строка дело в том что
00:09:55
вот в этой строке которая была прочитана
00:09:58
из файла также сохраняется символ
00:10:01
переноса строки поэтому когда функция
00:10:03
print отображает это строка то она
00:10:06
отображает строку с переносом строки и
00:10:08
плюс добавляет такую же перенос строки
00:10:10
сама по себе поэтому чтобы его не было
00:10:12
на можешь видеть так прописать and
00:10:14
равняется и просто пустая строка это же
00:10:17
самое например вот здесь сделать хотя не
00:10:19
обязательно запустим программу и видел
00:10:22
что эти теперь строки отображается
00:10:23
просто одна под другой ну а если мы
00:10:25
хотим построчно просто прочитать весь
00:10:27
файл то для этого можно воспользоваться
00:10:29
циклон фон она будет перебирать файл вот
00:10:33
этот вот объект file построчно ну и
00:10:35
соответственно войти здесь отобразим то
00:10:37
что он прочитает запустим программу и
00:10:40
видим что все наши стройке были
00:10:42
прочитаны опять же добавит этот параметр
00:10:44
and с пустой строкой и у нас вот все
00:10:47
строчки здесь отображаются то есть файл
00:10:50
он воспринимается как и ты риру имый
00:10:52
объект и придраться возвращает новую
00:10:55
прочитанную строку из файла наконец если
00:10:57
мы хотим прочитать все строчки из файла
00:11:00
сразу все стручки то для этого можно
00:11:02
воспользоваться тать jv методам файловым
00:11:04
методом который называется red lights на
00:11:07
выходе мы получим уже список из строк из
00:11:10
отобразит вот это вот переменную с то мы
00:11:13
это увидим вот она список кстати здесь
00:11:16
отображается как раз этот первый
00:11:17
невидимый символ но а далее идут вот эти
00:11:20
вот строки и у каждой строки которой
00:11:22
была прочитана в конце стоит этот символ
00:11:25
перенос строки слышен ну и
00:11:27
соответствовать все стройки у так что мы
00:11:28
прочитали однако вот этот метод red line
00:11:31
is следует использовать с осторожностью
00:11:33
потому что для больших файлов может
00:11:35
возникнуть ошибка нехватки памяти для
00:11:37
хранения вот это вот полученного списка
00:11:39
но представьте что у насоса есть книжка
00:11:42
война и мир сколько там строчек там
00:11:45
очень много строчек и если мы
00:11:47
воспользуемся этими методов ride lite
00:11:49
для чтения этой книжке то соответственно
00:11:51
вся эта книга целиком будет помещена в
00:11:53
память поэта вот этот метод a ride lite
00:11:56
следует применять только в том случае
00:11:57
самоуверенно что файл довольно маленький
00:12:00
и мы можем все строчки сохранить вот в
00:12:02
таком списке и осталось только добавить
00:12:04
что как только мы завершаем работу с
00:12:07
файлом его обязательно следует закрыть
00:12:10
это делается следующим образом
00:12:11
вызывается метод close без аргументов
00:12:14
вот эти вот образом что при этом
00:12:16
происходит мы освобождаем память связана
00:12:19
с этим файлам и во вторых у нас не будет
00:12:22
проблем с потерей годах при записи в
00:12:25
файл когда мы будем рассматривать запись
00:12:27
файл мы об этом отдельно поговорим то
00:12:29
есть всегда когда мы работая с файлом
00:12:32
его обязательно в конце нужно закрыть
00:12:35
это нужно запомнить и всегда делать на
00:12:38
этом мы с вами совершим 1 знакомств
00:12:40
файлами из этого занятия вы должны
00:12:42
запомнить как открывать файл на чтение
00:12:44
как прочитать все данные или часть
00:12:47
данных как менять и считывает файловую
00:12:48
позицию с помощью методов секретер и не
00:12:51
забывать закрывать открытые файлы после
00:12:54
работы с ними жду всех вас на следующем
00:12:57
уроке
00:12:58
[музыка]

Описание:

Обучающий курс: https://stepik.org/course/100707/promo Начинаем работу с файлами. Функция open() для открытия файла. Методы read(), readline() и readlines() для чтения данных из файла. Цикл for для чтения данных. Методы seek() и tell() для работы с файловой позицией. Метод close() для закрытия файла. Telegram-канал: https://t.me/python_selfedu

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "#51. Функция open. Чтение данных из файла | Python для начинающих"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "#51. Функция open. Чтение данных из файла | Python для начинающих" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "#51. Функция open. Чтение данных из файла | Python для начинающих"?mobile menu icon

  • Полностью зависать браузер/компьютер не должен! Если это произошло, просьба сообщить об этом, указав ссылку на видео. Иногда видео нельзя скачать напрямую в подходящем формате, поэтому мы добавили возможность конвертации файла в нужный формат. В отдельных случаях этот процесс может активно использовать ресурсы компьютера.

mobile menu iconКак скачать видео "#51. Функция open. Чтение данных из файла | Python для начинающих" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "#51. Функция open. Чтение данных из файла | Python для начинающих"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "#51. Функция open. Чтение данных из файла | Python для начинающих"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

  • Нисколько. Наши сервисы абсолютно бесплатны для всех пользователей. Здесь нет PRO подписок, нет ограничений на количество или максимальную длину скачиваемого видео.