Pickle – Thư Viện Serialization/Deserialization Trong Python

Gần đây khi chạy thử một vài thuật toán Deep Learning, đặc biệt là các thuật toán cung cấp source code sử dụng thư viện Caffe, có gặp một vài vấn đề liên quan đến module Pickle trong Python. Thực ra, bình thường cũng không định viết gì cả. Nhưng chợt nhớ ra mình cũng quan tâm đến chủ đề Serialization/Deserialization này. Nó có vai trò giống như ASN.1 mà có tìm hiểu hồi trước, hay phổ biến nhất của thể loại này là Protocol Buffer của Google, hay Apache Thrift. Thế là note lại cái để quên nó đi.

1. Pickle – Chuyển đổi một đối tượng Python sang dạng binary và ngược lại

  • Sử dụng cách thức chuyển đổi riêng (chỉ dành riêng cho Python), không gắn với bất cứ một chuẩn chuyển đổi nào.
  • Không có cơ chế định nghĩa dữ liệu tách biệt với việc mã hóa dữ liệu đó. Dữ liệu được ghi ra phải là Python Object, và chỉ có thể đọc được trong Python.
  • Có thể ghi ra/load vào hầu hết đối tượng của các kiểu dữ liệu phổ biến
  • Các file pickle được ghi ra hoàn toàn có thể đọc được ở một môi trường Python khác. (Tất nhiên có tương thích về phiên bản protocol)

2. Pickle – là không secure

Mặc định, nó sẽ import tất cả các module có trong dữ liệu từ file được load lên. Thế này thì vãi quá. Bởi vậy, người ta khuyên không nên cứ thế load vào một file pickle không rõ nguồn gốc. vì éo ai biết nó load gì và sẽ chạy gì sau đó.

Chia sẻ:

  • Facebook
  • Twitter
  • Reddit
  • Tumblr
  • Email
  • LinkedIn
  • In
Thích Đang tải...

Có liên quan

Điều hướng bài viết Khóa học online đầu tiên về Machine Learning (note 3) – Khó ~~ Bắt đầu về Docker

Bình luận về bài viết này Hủy trả lời

Δ

Tìm Search KeywordBasic Buildroot CodeSkill Communication Compile Debug Driver Embedded Firmware IoT ITS Js Khác Machine Learning Microcontroller Network OpenEmbbeded OpenSource Python RTOS Security thread USB YoctoProject Category
  • Basic (52)
  • Buildroot (2)
  • CodeSkill (3)
  • Communication (13)
  • Compile (11)
  • Debug (4)
  • Driver (1)
  • Embedded (17)
  • Firmware (2)
  • IoT (3)
  • ITS (1)
  • Js (1)
  • Khác (14)
  • Machine Learning (3)
  • Microcontroller (1)
  • Network (1)
  • OpenEmbbeded (10)
  • OpenSource (1)
  • Python (1)
  • RTOS (4)
  • Security (1)
  • thread (2)
  • USB (11)
  • YoctoProject (9)
Hit
  • 98 814 ヒット
  • Bình luận
  • Đăng lại
  • Theo dõi Đã theo dõi
    • === Write to read it later ===
    • Theo dõi ngay
    • Đã có tài khoản WordPress.com? Đăng nhập.
    • === Write to read it later ===
    • Tùy biến
    • Theo dõi Đã theo dõi
    • Đăng ký
    • Đăng nhập
    • URL rút gọn
    • Báo cáo nội dung
    • Xem toàn bộ bài viết
    • Quản lý theo dõi
    • Ẩn menu
%d Tạo trang giống vầy với WordPress.comHãy bắt đầu

Từ khóa » Thư Viện Pickle Trong Python