Когда программа запущена, все объекты Python временно сохраняются в системной памяти, и после завершения программы вся занятая память будет освобождена операционной системой. Возникает вопрос: как мы можем хранить объекты Python на дисках или отправлять их по сети? Это сценарии, в которых необходимо травление.
Травление относится к процессу преобразования объекта Python в байты, которые можно удобно хранить на дисках или отправлять по сети. Это называется травлением в Python, а на других языках - сериализацией, маршалингом, выравниванием и т. Д. Все эти слова означают один и тот же процесс и взаимозаменяемы.
Python имеет встроенный модуль, pickleкоторый делает процесс травления очень простым и удобным.
В этом модуле есть два типа часто используемых методов: dumpsили dump, и loadsили load.
dumpsМетод используется для преобразования объекта в байтах:
После преобразования объекта Python в байты нам просто нужно сохранить байты в файл на дисках.
Если вы еще не знакомы с обработкой файлов в Python, не беспокойтесь, об этом есть отличный учебник:
Другой вызываемый метод dump(без окончания «s») имеет второй параметр, который получает имя файла. Следовательно, мы можем использовать dumpдля преобразования объекта в байты и сразу же сохранить его в файл:
Распаковка - операция, противоположная травлению, - относится к процессу преобразования байтов в объекты Python. Для этой цели мы можем использовать метод loador loads:
Проблема pickleмодуля: его можно использовать только в Python. Другие языки не могут понимать и преобразовывать байты, генерируемые pickleмодулем. Если мы хотим передать объект между разными языками программирования, мы должны сериализовать объект в стандартный и независимый от языка формат. Распространенный способ - сериализовать его в JSON. Объекты JSON выглядят как строки, которые можно читать прямо на веб-сайте и легко сохранять на диски или передавать по сети. Например, в веб-разработке на Python JSON обычно используется для передачи объектов между Python в серверной части и JavaScript во внешнем интерфейсе.
Python имеет встроенный модуль с именем, jsonи его операции аналогичны pickleмодулю:
Сбор - это процесс преобразования объектов Python в байты, чтобы их было удобно хранить на дисках или передавать по сети. Если мы используем только Python в проекте, pickleмодуль будет полезен. Если нам нужно передавать данные между разными языками, часто используется JSON.
Спасибо за чтение, здесь есть еще больше отличных руководств по Python:
Ultimate Python Tutorial (продолжайте обновлять)
Когда вы делаете запрос на facebook.com, ваш компьютер ищет доменное имя, чтобы преобразовать это доменное имя в IP-адрес, чтобы ваш компьютер мог установить это соединение.
Вы, должно быть, слышали обо всех новых мощных плагинах ChatGPT, таких как Browser, Code Interpreter и т. д. Но есть проблема: доступ к плагинам ограничен списком ожидания, и поэтому многие не имеют к нему доступа.
Это ярко-золотое утро в холмистой местности на западе, когда первые лучи солнечного света освещают инеистую траву на равнинах. Стадо безмятежных ангусских коров, угольно-черных и массивных, вырисовывается на фоне восхода солнца, когда они идут по проторенной тропе к месту, которое они все хорошо знают; барная стойка.
Было уже за полночь, когда Хейден отвез Кэти обратно в общежитие колледжа после их совместного вечера. У нее был ранний урок утром, и у нее не было другой смены одежды после того, как она осталась с ним прошлой ночью.
Если мы хотим продолжать процветать на этой планете, нам придется вести опасные разговоры. Те, которые бросают вызов тому, что мы сделали, что мы делаем и что мы в настоящее время собираемся продолжать делать (или планируем делать).
Мы часто обнаруживаем, что изо всех сил пытаемся реализовать то, что, как мы знаем, полезно для нас. От того, чтобы сказать значимому другому, что мы любим его, до того, чтобы помнить, что нужно говорить как пират, всегда будут те, кто утверждает, что день, неделя или месяц событий не нужны, потому что они уже делают эти вещи.