Работа с файлами в Python. Чтение и запись данных

แชร์
ฝัง
  • เผยแพร่เมื่อ 7 ก.พ. 2025
  • 🔥🔥🔥 Инди-курс по Python 🔥🔥🔥
    stepik.org/cou...
    👉👉👉 Свой вопрос по курсу можешь задать в чате
    t.me/+SlnNhAO7...
    👉👉👉 Также подписывайся на мой телеграмм-канал
    t.me/python_eg...
    egoroffartem.py...
    stepik.org/cou...
    Курс на степике
    В данном уроке разберем как работать с файлами, выполнять операцию чтения из файла, и запись в файл ( file input/output)
    Прежде, чем работать с файлом, его надо открыть.Для этого в Python есть встроенная функция open:
    file = open(имя, режим, кодировка)
    У функции open много параметров, они указаны в статье "Встроенные функции", нам пока важны 3 аргумента: первый, это имя файла. Это обязательный параметр. Путь к файлу может быть относительным или абсолютным.
    Второй аргумент, это режим, в котором мы будем открывать файл. По умолчанию все файлы открываются в режиме чтения "r".
    Другие режимы описаны здесь
    stackabuse.com...
    Третий необязательный параметр encoding отмечает за кодировку файла. Для возможности работы с кириллицей вам необходимо поставить encoding в значение utf-8
    egoroffartem.py...
    Подробная информация об этом уроке
    Все видео этого курса можете найти на сайте
    egoroffartem.py...
    или в Вк
    videos-...
    Если кому нужна помощь, предлагаю индивидуальные занятия. Подробнее пишите в личку в вк
    artem_e...
    python....
    В данном группе можете найти информацию о новых видео и задать вопросы

ความคิดเห็น • 229

  • @egoroffchannel
    @egoroffchannel  8 หลายเดือนก่อน +2

    🫵 Теория без практики - ничто, поэтому 👇
    🐍 stepik.org/course/63085/promo
    👉 специально для тебя создал бесплатный топовый курс по Python
    👉 В нем тебя ждет:
    📗 более 400 практических заданий на программирование
    📗 более 250 тестовых заданий на проверку материала
    📗 десятки часов видеоматерилов по теории
    📗 видеоразборы решения заданий
    📗 текстовые материалы по урокам, примеры кода
    📗 доступ к закрытому чату с дружественной обстановкой
    📗 сертификат в случае успешного прохождения курса

  • @dasein6449
    @dasein6449 5 ปีที่แล้ว +173

    Спасибо что не бросаете нас. Ваш контент очень полезный и интересный. Спасибо большое.

    • @voltolive1370
      @voltolive1370 2 ปีที่แล้ว

      Как жешь тетя бросить бедалагу? Ты же протухнишь 🤣🤣🤣🤣🤣🤣

    • @astro_karina97
      @astro_karina97 ปีที่แล้ว +1

      ​@@voltolive1370язва

    • @_n8tv_342
      @_n8tv_342 ปีที่แล้ว

      @@voltolive1370зато ты не протухнешь

  • @innapuzanska5977
    @innapuzanska5977 5 ปีที่แล้ว +47

    Спасибо большое и дай Вам Бог долгих лет жизни

  • @shadow_sz
    @shadow_sz 5 ปีที่แล้ว +39

    Функция print() по умолчанию добавляет в концу вывода символ перенос строки
    и считанная строка из файла имеет в конце символ перенос строки

  • @MrMirror369
    @MrMirror369 ปีที่แล้ว +3

    Дается сложно, но я стараюсь запомнить. Спасибо большое, Артем !

  • @j2st115
    @j2st115 ปีที่แล้ว +1

    Спасибо, про файлы это очень интересная тема, одна из самых интересных точно, все понятно объясняете, спасибо вам за такое информативное и бесплатное видео!

  • @شعيبابنيعقوب
    @شعيبابنيعقوب 5 ปีที่แล้ว +20

    Опаньки, новый видосик. Благодарю и ставлю сразу лайк :) Только не бросай это дело, а то мало тех, кто так хорошо объясняет.

  • @Дмитрий-у5в2ь
    @Дмитрий-у5в2ь 2 ปีที่แล้ว +35

    спасибо конечно, разве что ты 12 минут рассказывал как это работает, а в конце такой: "но так лучше не делать, а как делать ищите другое видео")

  • @dimaliybimtsev8672
    @dimaliybimtsev8672 ปีที่แล้ว +1

    Очень интересно и подробно. Хочу изучить базу с помощью вашего канала для автоматизации процессов , bash все же не так прост и не так краток )

  • @ins6796
    @ins6796 2 ปีที่แล้ว

    благодарю, один из лучших по качеству объяснения каналов в ру ютубе.

  • @ЕвгенийИрдеев
    @ЕвгенийИрдеев 2 ปีที่แล้ว +3

    Артем!Вы мега доходчиво объясняете!Спасибу за бесценную работу!

  • @who-1880
    @who-1880 4 ปีที่แล้ว +1

    Быстро и понятно. Хотел написать некий язык программирования. Подзабыл как работает чтение из файлов. Ты спас. Лайк и подписон!

  • @darkelectro7044
    @darkelectro7044 4 ปีที่แล้ว +2

    лайк. лайк. я сюда попала с другого курса на степике, где эта тема была плохо раскрыта (пришлось ютубить), закончу с ним и обязательно и ваш курс пройду❤

  • @alexsidikov3426
    @alexsidikov3426 ปีที่แล้ว +1

    Как всегда , бог интеграций продвижения канала!) Лайк!
    Когда начал писать пример , сразу создал его в другой папке и тут и пригодилось 'r' приятно видеть на примере работы с другой задачей, как важны предыдущие уроки :)

  • @sanctum143
    @sanctum143 4 ปีที่แล้ว +6

    Спасибо, вы сохраняете мое время и очень подробно объясняете!

  • @aidarb.7772
    @aidarb.7772 5 ปีที่แล้ว +34

    Большое вам спасибо за проделанную работу)

  • @Мекун
    @Мекун 3 ปีที่แล้ว +14

    Что бы избавится от пропуска между строками надо писать дополнительное значение в функции: ваш вариант -- " ptint(name_file.readline()) ", вариант исключающий пробел -- "print(name_file.readline(), end = 'в скобках не должно быть ничего, даже пробела' "
    В общем ответ: print(name_file.readline(), end = "")

    • @MrLEDok-fe1pe
      @MrLEDok-fe1pe 2 ปีที่แล้ว

      Получится ли
      print(str(name_file.readline()[:-2]) и в цикл, получается везде будет удаляться --
      --

    • @Okorock_
      @Okorock_ ปีที่แล้ว

      Пробелы не чем не мешают, если по ним идти циклам он их не захватит, а если нужно посчитать их кол-во. Ведь пробелов на один меньше чем строк

    • @nikfix7264
      @nikfix7264 ปีที่แล้ว +1

      .strip() убирает
      и \t

  • @rihler1083
    @rihler1083 ปีที่แล้ว +1

    Мне очень понравился ваш курс. Задания бывают сложные и это хорошо, ты их откладываешь, а потом возвращаешься, и тебе легче их решать( при этом используешь только те навыки, на которые и была задача)

  • @araneon1
    @araneon1 4 ปีที่แล้ว +4

    Коротко, чётко и по существу, спасибо большое!!!

  • @user-hammer1974
    @user-hammer1974 2 ปีที่แล้ว

    Спасибо!!! Благодаря твоему видео разобрался как указать путь к файлам в РyCharm Cоmmunity Edition 2022.2.2 на компе. Учится никогда не поздно!

  • @marlenzhantore8218
    @marlenzhantore8218 5 ปีที่แล้ว +1

    Братан у тебя видосики бомба.Не останавливайся.Не терпением ждем твои видосы

  • @qwertymegaforce9088
    @qwertymegaforce9088 2 ปีที่แล้ว

    Боже, как же вы выручаете!

  • @codelen8121
    @codelen8121 5 ปีที่แล้ว +1

    Брат ты лучший!!!!! все ролики разом посмотрел,однозначно огромный лайк

  • @bramvl9247
    @bramvl9247 5 ปีที่แล้ว +4

    Не, ну как всегда - лайк! Спасибо огромное!)

  • @DeshkaSCP
    @DeshkaSCP 3 หลายเดือนก่อน +1

    5:30 потому что 1) функция принт имеет параметр end, который по дефолту в конце строки ставит "
    " а также в конце строки внутри файла есть невидимые "
    ". Поэтому и получается 2 отступа)

  • @palusoid
    @palusoid 4 ปีที่แล้ว +9

    Полезные методы на понятном языке с пояснениями. Спасибо!

  • @burankurmanaliev6607
    @burankurmanaliev6607 5 ปีที่แล้ว +2

    спасибо большое вам вы четко и ясно все обеъесняете и к тому же голос приятный надеюсь вы будете продолжать свое дело )

  • @Дэнчик-ы8ц
    @Дэнчик-ы8ц ปีที่แล้ว +1

    5:30 потому что по умолчанию end='
    '
    И в конце каждой строки стоит точно такой же символ

  • @gegargo6751
    @gegargo6751 6 หลายเดือนก่อน +1

    Я дошел до того момента изучения пайтона когда у меня в голове только:
    "ПААААЙТОН БЛЯЯЯЯЯЯЯЯЯЯЯЯТЬ"

  • @danilacrazy2419
    @danilacrazy2419 4 ปีที่แล้ว +3

    Вы огромный молодец ! Благодаря вам я смог написать базу данных ( смешно кнш но все же )

    • @Eneos7
      @Eneos7 3 ปีที่แล้ว

      Можешь помочь?

    • @n3mes1s69
      @n3mes1s69 3 ปีที่แล้ว

      @@Eneos7 дядя,это было год назад,забей

  • @nikitiki524
    @nikitiki524 2 ปีที่แล้ว +1

    Спасибо, как всегда кратко и по существу

  • @Dmitrii-Zhinzhilov
    @Dmitrii-Zhinzhilov 2 ปีที่แล้ว +1

    Артём, благодарю!!!!! 🔥🔥🔥🔥🔥👍

  • @Vladimir-re8xl
    @Vladimir-re8xl 4 ปีที่แล้ว +3

    ой как еще хочется о файлах видос

  • @СабинаСабирова-з7в
    @СабинаСабирова-з7в ปีที่แล้ว

    спасибо за качественные уроки!!

  • @ПавелВасильев-н9ф
    @ПавелВасильев-н9ф 2 ปีที่แล้ว +1

    Спасибо, для подготовки к егэ очень полезно

  • @galinaoliver5624
    @galinaoliver5624 2 ปีที่แล้ว +1

    Отлично, что есть и степик и спонсорство! Двигатели прогресса!

  • @sofiipochta
    @sofiipochta 9 หลายเดือนก่อน +1

    спасибо большое, посмотрела :)

  • @RealLandorg
    @RealLandorg ปีที่แล้ว +1

    Всем привет, товарищи программисты!
    Хотел бы дать не плохой совет для новичков.
    Можете использовать
    with
    Для открытия файла.
    Пример:
    with open(' путь к файлу', 'w', encoding='UTF-8') as file:
    file.write('Хорошего дня друг!')
    Тогда file.close() не нужно использовать ^-^

  • @hmrtv3032
    @hmrtv3032 2 ปีที่แล้ว

    Я из 2022 года! Это видео спасло меня. Спасибо автору!!!

  • @maxxsters3582
    @maxxsters3582 2 ปีที่แล้ว

    Красава,пол часа искал и ток ты помог,сппасибо удачи)

  • @floztyfz3844
    @floztyfz3844 3 ปีที่แล้ว +1

    Спасибо! Вы очень хороший человек. +подписка

  • @lozaran
    @lozaran 5 ปีที่แล้ว +6

    лойс за контент (P/s хотелось бы увидеть хороший рашен контент по пандам, сиборну и прочим матплотлибами)

  • @rainaldstar1229
    @rainaldstar1229 9 หลายเดือนก่อน +1

    readline() считывает символ '
    ' + функция print() делает по умолчанию ещё один перенос строки и получается что при считывании и выводе файла построчно выводится дополнительная пустая строка в консоль.

  • @lolplsdiethxbye3445
    @lolplsdiethxbye3445 4 ปีที่แล้ว +3

    Спасибо за проделанную работу. РЕСПЕКТ С КЗ

  • @suprun1982
    @suprun1982 4 ปีที่แล้ว +1

    Спасибо большое за курс!

  • @56345-w
    @56345-w 2 ปีที่แล้ว

    Спасибо, объяснил всё очень понятно. С меня лайк+подписка

  • @Mrpoljkee
    @Mrpoljkee 4 ปีที่แล้ว +1

    Классное видео! Лайк
    Жаль, что нет продолжения работы с файлами через with

  • @МарияКуприянюк-м6ф
    @МарияКуприянюк-м6ф 5 ปีที่แล้ว +1

    Спасибо большое! очень понятно объясняете

  • @iosifhusainov
    @iosifhusainov ปีที่แล้ว

    Просто классно. Спасибо.

  • @ДинисГринин
    @ДинисГринин 5 ปีที่แล้ว +6

    Будут ещё видео по работе с файлами, очень хочется по-подробнее разобраться в этом разделе))

  • @ВадимСамаль-ш7ж
    @ВадимСамаль-ш7ж 2 ปีที่แล้ว

    Благодарю! Все очень доступно!

  • @EvgenMo1111
    @EvgenMo1111 3 ปีที่แล้ว +1

    подписался, спасибо, все доходчиво

  • @mastergun7529
    @mastergun7529 ปีที่แล้ว

    большое спасибо за помощь

  • @mariiamariia2023
    @mariiamariia2023 3 ปีที่แล้ว +1

    Спасибо большое, полезное видео

  • @artem_garyanov
    @artem_garyanov 3 ปีที่แล้ว +1

    Спасибо Вам!

  • @НурсултанЕсжияров
    @НурсултанЕсжияров 2 ปีที่แล้ว

    очень хороший контент

  • @badkillerzz9995
    @badkillerzz9995 3 ปีที่แล้ว

    Ты лучший! 🙂

  • @МихаилПетровичЗубенко-р9в
    @МихаилПетровичЗубенко-р9в 5 ปีที่แล้ว +1

    Спасибо за труд, у тебя великолепно всё получается

  • @romapodgurskiy6509
    @romapodgurskiy6509 2 ปีที่แล้ว +3

    чтобы так не происходило, как на фрагменте 5.28, нужно в принте указать: print(file.readline(), end='')

    • @МашаПопова-г2щ
      @МашаПопова-г2щ 2 ปีที่แล้ว

      а происходит это, потому что в конце каждой строчки стоит
      и readline считывает "лалалала
      "
      то есть и принт выведет "лалалала"
      ""

  • @itzvortex3172
    @itzvortex3172 4 ปีที่แล้ว +2

    Так произошло потому что следующая строка в python считывается как символ
    который все же входит в строку и каждый раз выводиться)

  • @ABV1K
    @ABV1K 3 ปีที่แล้ว

    Круто! Спасибо!

  • @ОнтоКришус
    @ОнтоКришус 2 ปีที่แล้ว +1

    10:05 так почему же если при "a+" написать print(file.read()) то ничего напечатано не будет?

  • @avdeevgr
    @avdeevgr 5 ปีที่แล้ว +15

    Как всегда супер!
    Артем скажи, планируется ли что то про классы?
    Спасибо.

    • @egoroffchannel
      @egoroffchannel  5 ปีที่แล้ว +11

      да, в следующем месяце думаю начну

    • @yura9885
      @yura9885 5 ปีที่แล้ว +6

      В инете много контента про базовые штуки, а про классы простым языком не найти. Ждем классы!

    • @Инструктаж-п2с
      @Инструктаж-п2с 5 ปีที่แล้ว +1

      @@yura9885 Полностью согласен

    • @ОтецВалерьян-у4ц
      @ОтецВалерьян-у4ц 4 ปีที่แล้ว +1

      Классы даже очень интересная тема!но нужно внимательно читать и вникать в тему

    • @valera_kardan
      @valera_kardan 2 ปีที่แล้ว

      @@egoroffchannel Здравствуйте, а как можно каждую строку анализировать и допустим выводить в консоль предварительно окрасив в нужный цвет?

  • @1000ТҮРКҮН-д7м
    @1000ТҮРКҮН-д7м 3 หลายเดือนก่อน

    spasibo za urok

  • @ES-ng3el
    @ES-ng3el ปีที่แล้ว

    к вопросу на 5:35: дополнительный пробел возникает из-за
    в конце каждой строки. "
    " его не видно, а он есть))))

  • @notSafe_lessons
    @notSafe_lessons 6 หลายเดือนก่อน +1

    Видео очень даже полезное, но графика плохая, 750p сложно видеть текст

  • @fillplays8245
    @fillplays8245 3 ปีที่แล้ว

    5:40, думаю добавляатся ещё пробел, потому что в конце предложений у каждой строки есть '
    ', который переводит следующий текст на новую строку

  • @СарматПересветов
    @СарматПересветов 3 ปีที่แล้ว

    большое спасибо за видио)

  • @КарлыгашАпсадыкова
    @КарлыгашАпсадыкова 2 ปีที่แล้ว

    огромное спасибо

  • @ОлександрЛазарець-и7з
    @ОлександрЛазарець-и7з 2 ปีที่แล้ว +1

    Спасибо большое. А есть у вас видео, как считать числа и поработать с ними? Потому что, я так понял, мы считываем все в строчном виде?

  • @sashaxobot6868
    @sashaxobot6868 2 ปีที่แล้ว

    Добрый день, а почему не показали метод открытия файла через with open () as .... тогда автоматически закрывается.

  • @Ilm1n
    @Ilm1n 10 หลายเดือนก่อน

    Думаю также стоило затронуть конструкцию with open()

  • @Инструктаж-п2с
    @Инструктаж-п2с 5 ปีที่แล้ว +4

    А да, вот все режимы: r, w, a, r+, a+ (для текстового файла)

  • @nuc1earant
    @nuc1earant 2 ปีที่แล้ว +1

    5:23 end=""

  • @filim56
    @filim56 4 ปีที่แล้ว +1

    Я только учусь спасибо

  • @Pink-Goose
    @Pink-Goose 2 ปีที่แล้ว +1

    Здравствуйте, я пишу бота для дискорда на Python, можете подсказать, почему после первого использования .read() или .write() содержимое файла .txt стирается?

  • @BEDRok-sh2fb
    @BEDRok-sh2fb 21 วันที่ผ่านมา

    а можно использовать 2 мода одновременно? Тоесть к примеру wb (работа с бинарными файлами) и w(чтобы файл пересоздавался если он уже имеется на компьютере?)

  • @dimakof
    @dimakof 4 ปีที่แล้ว

    Обязательно запишусь

  • @user-nb5bp6px7o
    @user-nb5bp6px7o 4 ปีที่แล้ว +1

    9:45. впринципі якщо дописати перед всім кодом while True: і вирівняти то може вийти примітивний вірус "пожирач пам'яті"

    • @awwlik
      @awwlik 4 ปีที่แล้ว

      Молодець Володька

  • @valiash8297
    @valiash8297 ปีที่แล้ว

    Подскажите, пожалуйста, как добавлять по 1 слову в список и проверять, есть ли это слово уже в списке

  • @ramazanmedet7507
    @ramazanmedet7507 5 ปีที่แล้ว +4

    Спаибо за видео!
    Егор, так как ты делаешь видео по уроки Python, как насчёт видео про олимпиадное программирование на языке Python?
    Как тебе такая идея ?

    • @egoroffchannel
      @egoroffchannel  5 ปีที่แล้ว +8

      Егора тут вообще нет) Меня Артем зовут

    • @lime1453
      @lime1453 3 ปีที่แล้ว

      @@egoroffchannel XD Что??? А тогда почему канал называется egoroff?????

    • @schmoopiegrob8758
      @schmoopiegrob8758 3 ปีที่แล้ว +2

      @@lime1453 он каждое видео говорит, меня зовут Егоров Артем...

  • @TheBest3948
    @TheBest3948 5 ปีที่แล้ว +2

    Добрый Артем! Затронете ли Вы в своем курсе о питоне или отдельном курсе про ООП и его применении, а также будут ли данное дополнение на курсе в степике? Заметил, что очень многие авторы курсов не рассматривают применение накопленных знаний в реальных ситуациях, как по мне ООП нужно знать и уметь программить по ООП'у.

    • @egoroffchannel
      @egoroffchannel  5 ปีที่แล้ว +3

      добрый вечер. Первое видео по ООП уже прорабатывается

    • @TheBest3948
      @TheBest3948 5 ปีที่แล้ว

      @@egoroffchannel Супер, буду ждать весь плейлист!

  • @RyabaaHD
    @RyabaaHD 3 ปีที่แล้ว +1

    Привет! Какие могут быть причины того, что даже при условии что .py и .txt лежат в одной директории, но .py не хочет открывать .txt сообщая, что нет такого файла в директории? Есть варианты исправить, не альтернативное открытие, а чтоб как на видео открывался... как у всех открывался...

  • @r0m1mpl97
    @r0m1mpl97 3 ปีที่แล้ว

    Вот видео с лучшими способами считывания - th-cam.com/video/YV1pxZW8UfA/w-d-xo.html

  • @veronikakovalchuk9954
    @veronikakovalchuk9954 2 ปีที่แล้ว

    Здравствуйте. почему через раз запись в файл работает. спасибо заранее за ответ

  • @Slavik_tkd
    @Slavik_tkd 3 ปีที่แล้ว

    3:13 я написал перед путём к файлу букву r, но экранированные символы все равно активны

  • @fisti1208
    @fisti1208 4 ปีที่แล้ว +1

    а можно ли сделать так, если находит одинаковую строчку, писал какое нибудь слово? вот мой код:
    while True:
    file = open("base.txt", "a+")
    a = input("ваше имя: ")
    c = file.write(f"{a}
    ")
    b = file.readlines()
    if file == c:
    print("$")

  • @TheDraven
    @TheDraven ปีที่แล้ว

    Здравствуйте.
    Касательно команды file.write
    У меня они выполняются без ошибок, но в самом файле ничего нет, текст не отображается. Как это решить?

  • @КахармановаШахназ
    @КахармановаШахназ ปีที่แล้ว

    Запишите заглавными буквами слово, написанное в одной строке файла input.txt, в файл output.txt.
    можете помочь?

  • @muhtoryusufjanov3946
    @muhtoryusufjanov3946 5 ปีที่แล้ว +1

    Thanks ( wonderful)

  • @alexsh5632
    @alexsh5632 3 ปีที่แล้ว +2

    Здравствуйте, спасибо за урок! А в какой среде вы программируете?

    • @zaza2258
      @zaza2258 3 ปีที่แล้ว

      Pycharm

  • @kl00dy
    @kl00dy 3 ปีที่แล้ว

    Когда я создал текстовый документ в папке, то задалась кодировка Windows(CRLF), а не UTF-8, и файл просто не находился
    encoding стоит использовать только тогда, когда у вас есть проблемы с выводом (неразборчивые символы)
    Проверяйте какая кодировка в самом текстовом документе
    Автор открыл txt в PyCharm, а он задает кодировку (там-же можно и конвертировать)

  • @mellifluous2771
    @mellifluous2771 2 ปีที่แล้ว +1

    а как в папку добавить текстовый файл?

  • @Динара_АЖ
    @Динара_АЖ 3 ปีที่แล้ว

    Какой компилятор используете?

  • @Cycle329
    @Cycle329 5 ปีที่แล้ว

    Поставил лайк

  • @sainco3036
    @sainco3036 5 ปีที่แล้ว +1

    Спасибо.

  • @Рирайто
    @Рирайто 3 ปีที่แล้ว

    там в конце каждой строчки стоит невидимый символ, который перемещает на строку вниз(Enter). Ну, в майкрософт ворде такое есть

  • @vlad_samuilov2086
    @vlad_samuilov2086 2 ปีที่แล้ว

    Как взять в программу переменную с txt

  • @13lordraven
    @13lordraven 8 หลายเดือนก่อน

    у меня не видит файл который там же где и исполняемый фаил - я на него глвное смотрю - а пайчарм его в упор не видит ...как быть? и полный путь уже делал все равно не видит и все txt файл

  • @tagepaul1646
    @tagepaul1646 4 ปีที่แล้ว +2

    Почему режим 'a+' записать- записал, но ничего не считал (file.read()) 10:10

    • @coulman.offical1372
      @coulman.offical1372 4 ปีที่แล้ว

      Согласен

    • @v1amos
      @v1amos 3 ปีที่แล้ว

      Он не вывел получившийся результат на экран. То есть там нет функции print.