#53. Запись данных в файл в текстовом и бинарном режимах | Python для начинающих

Поділитися
Вставка
  • Опубліковано 15 жов 2021
  • Обучающий курс: stepik.org/course/100707
    Выполняем запись в файл в текстовом и бинарном режимах доступа. Методы: write(), writelines() и функции load() и dump() модуля pickle.
    Telegram-канал: t.me/python_selfedu

КОМЕНТАРІ • 56

  • @vladimirkulakov6126
    @vladimirkulakov6126 2 роки тому +9

    Ещё один великолепный урок! Отдельное спасибо за пикл!

  • @sledleo
    @sledleo Рік тому +6

    Супер! Классный урок, очень полезно и доходчиво!
    Спасибо за труды!

  • @user-tp7uw5cl7n
    @user-tp7uw5cl7n Рік тому +2

    Очень круто! Бинарный доступ 🔥Сергей большое спасибо за информацию!

  • @user-ee6dt3qc1t
    @user-ee6dt3qc1t 2 роки тому +4

    Автор приятный голос, хорошо излагает. Лайк, подписка. Теперь я знаю как сохранять переменные для своей игры

  • @user-fv1ht8fj2z
    @user-fv1ht8fj2z 2 роки тому +3

    Какой же вы молодец, Сергей! такие крутые видео снимаете!

  • @donfedor007
    @donfedor007 2 роки тому +5

    Спасибо за урок!
    Как всегда отлично!

  • @grimma795
    @grimma795 2 роки тому +21

    Думаю, стоит записать видео про новые фишки пайтон 3.10, довольно много полезных штук добавили.

    • @selfedu_rus
      @selfedu_rus  2 роки тому +8

      да, подумаю и сам еще о них узнаю )

    • @user-ym3yt1uq7s
      @user-ym3yt1uq7s Рік тому +4

      Как говориться просим просим)))
      Спасибо за курс очень круто

  • @user-hi1bw5gb3r
    @user-hi1bw5gb3r 2 роки тому +1

    Спасибо. Очень интересно и доступно!

  • @UC20100
    @UC20100 Рік тому +2

    Спасибо! Долго искал как сделать.

  • @user-qj6tk5fw9p
    @user-qj6tk5fw9p Рік тому +2

    огромное спасибо, очень полезно и интерестно)

  • @aleksandr_nokhrin
    @aleksandr_nokhrin Рік тому

    наконец понял назначение бинарного режима. Спасибо!

  • @andredru4278
    @andredru4278 4 місяці тому +1

    Спасибо. Отлично. Очень понравилось.

  • @MrSteviNel
    @MrSteviNel 2 роки тому +2

    Спасибо!

  • @user-068rus
    @user-068rus Місяць тому +1

    просто вау))) я на вас подписался вы крутой чувак!!!)

  • @jamjam3337
    @jamjam3337 Рік тому +2

    спасибо!

  • @illiukhin
    @illiukhin 2 роки тому +2

    спасибо

  • @user-cn4cg1wg9o
    @user-cn4cg1wg9o Рік тому +2

    Я вас приветсвую!!! Я выполнил запись и чтения как функцию def() где я записал список . но никак не могу вывести данные в глобальные переменые для дальнейшей обработки данных. И еще в файл txt записанный ctr список при чтении у него форма списка [ '200','222', '322','122','224',] но не читается как списо например print a[0] распечатывается скобка [ так далее. Помогите разясните почему так происходит. Сергей прошу поясни где я недопонимаю.

  • @ibrahimoglu
    @ibrahimoglu 2 роки тому +3

    👍

  • @user-ev3gf2ew8y
    @user-ev3gf2ew8y Рік тому +2

    Нет даже 1000 лайков. Непорядок. Посмотрел - лайкни !!

  • @johnmazepa
    @johnmazepa Рік тому +2

    То есть, БИНАРНЫЙ режим записи/чтения - это те же запись/чтение, только без кодировки(конвертации в удобочитаемый вид), как в текстовом режиме.
    Текстовый режим используется, когда файл с данными будеТ читать и живой человек, и программа.
    А бинарный режим - в случаях, когда файл хранит данные не для того, чтобы их глазами читал человек, а только чтобы использовать этот файл для дальнейшего использования программой.
    Верно я понял?

    • @selfedu_rus
      @selfedu_rus  Рік тому +1

      Бинарный режим доступа похож на доступ к ячейкам оперативной памяти, только эти ячейки хранятся в файле, т.е. никаких искажений и предобработки данных не осуществляется, как в текстовом режиме.

  • @mazur_vg
    @mazur_vg 2 роки тому +4

    На времени 7:48 происходит считывание данных с файла, но перед этой командой мы добавляем данные в конец. Считывание происходит с начала файла, однако при считывании не выводятся только что записанные данные. Почему?
    Аналогичная ситуация и на 8:34

    • @x-user-agent
      @x-user-agent 2 роки тому +9

      write не пишет данные на диск, точнее не гарантирует запись. оно всё буферизируется в памяти до закрытия файла, а там уже пишется. чтобы принудительно сбросить данные из буфера на диск есть flush() ну или переоткрыть файл

    • @mazur_vg
      @mazur_vg 2 роки тому +2

      @@x-user-agent спасибо Добрый Человек 😁👍

  • @gore_ot_uma166
    @gore_ot_uma166 2 роки тому +1

    спасибо за ваши уроки!!!
    в конце видео мы считывали списки из файла в 4 переменные. но если я не знаю, сколько там таких списков и хочу увидеть их все, какую команду надо ввести?

    • @selfedu_rus
      @selfedu_rus  2 роки тому +1

      Спасибо! Через цикл тогда.

  • @ms_Mar
    @ms_Mar 10 місяців тому

    Спасибо! Очень сложно найти что-то про бинарные фалы на python, очень интересует эта информация

  • @lant4025
    @lant4025 2 роки тому

    как сделать чтобы вместо текста, выводилась переменная, а точнее, результат парсера в переменной?

  • @user-gh6dp7xw1p
    @user-gh6dp7xw1p 2 роки тому +2

    Кто-нибудь может объяснить нубу, почему на 13:24 мы прописываем отдельно каждую b (b1-b4), если это всего лишь переменные, каждая из которых ссылается в итоге на один и тот же записанный файл целиком, а не на book1-book4 в отдельности? Если мы запишем просто: "b = pickle.load(file)" - разве мы не должны по логике получить тот же результат?

    • @TBRAK78
      @TBRAK78 Рік тому +3

      Чтение идет по строкам, т.е. можно дабы не задумываться, сколько у нас их там собрать всё в цикле, может и есть какое-то более элегантное решение:
      temp_list = []
      with open('out.bin', 'rb') as file:
      while True:
      try:
      temp_list.append(pickle.load(file))
      except EOFError:
      break
      В temp_list будет собран список с нашими списками.

  • @user-kt4yy5cf5e
    @user-kt4yy5cf5e 2 роки тому +3

    А про Json, csv?

    • @selfedu_rus
      @selfedu_rus  2 роки тому +2

      пока самую базу, может позже

  • @sledleo
    @sledleo 2 роки тому +4

    Шеф, подскажите или возможно поучиться снять практический урок - как создать на Python службу для Windows и для Linux. И как организовать обмен зашифрованными сообщениями через сервер с белым IP, при этом клиенты за NAT.

    • @selfedu_rus
      @selfedu_rus  2 роки тому +2

      ну пока это не планирую

    • @sledleo
      @sledleo 2 роки тому +2

      @@selfedu_rus печаль...

    • @sledleo
      @sledleo Рік тому

      Почему-то Ютуб стирает сообщения...

    • @sledleo
      @sledleo Рік тому

      Решение нашел - через API соцсетей (ВК или Телеграм)

    • @sledleo
      @sledleo Рік тому

      Сразу решается проблема сервера с белым IP и доступом через NAT

  • @a_n_t_o_n_09
    @a_n_t_o_n_09 2 роки тому +1

    А как вывести данные из текстового файла в словарь????

  • @user-zi2iq7gt4u
    @user-zi2iq7gt4u Рік тому +2

    уже битый час сижу и не пойму как удалить строку в текстовом файле. Получается это напрямую невозможно?
    Т.е. надо скопировать текстовый файл в переменную, в переменной произвести необходимые манипуляции и потом эту переменную заново записать в текстовый файл?..

    • @selfedu_rus
      @selfedu_rus  Рік тому +1

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

  • @flare3302
    @flare3302 2 роки тому +3

    первый )

    • @mazur_vg
      @mazur_vg 2 роки тому +3

      Не первый, а второй, причём я уже ко времени твоего комментария всё видео посмотрел 😂

  • @donfedor007
    @donfedor007 2 роки тому +1

    Доброе время суток! не понятно почему каждая строка из файла в отдельную переменную прочиталась?

    • @selfedu_rus
      @selfedu_rus  2 роки тому +2

      там свой формат данных, функция load() знает о размере элемента читаемых данных

    • @donfedor007
      @donfedor007 2 роки тому

      @@selfedu_rus нюансы свои . Он читает так как и записано было?

    • @selfedu_rus
      @selfedu_rus  2 роки тому +2

      да, сам модуль pickle заботится о формате, знает что было записано и знает как читать )

  • @MrSasuke1337
    @MrSasuke1337 5 місяців тому +1

    Откуда у вас синий экран вывода с 10:38, как мне его также открыть ааааак

    • @selfedu_rus
      @selfedu_rus  5 місяців тому

      программа far manager под ОС Windows

    • @MrSasuke1337
      @MrSasuke1337 5 місяців тому

      ​@@selfedu_rusспасибо большое

  • @user-xb8yb3lt6w
    @user-xb8yb3lt6w Рік тому +2

    Где здесь бинарный вид? Кому такой вид нужен?????? Научите как открыть файл в виде 1 и 0

  • @user-kt4yy5cf5e
    @user-kt4yy5cf5e 2 роки тому

    Расия, Расия, Расия