2016-11-05 23 views
12

Đây là câu hỏi của một sinh viên mà tôi không có câu trả lời hay. Đôi khi, tôi đã thấy .pickle, .pck, .pcl.db cho các tệp có chứa dưa chua Python nhưng không chắc chắn về cách thực hành phổ biến nhất hoặc tốt nhất là gì. Tôi biết rằng ba phần mở rộng sau này cũng được sử dụng cho những thứ khác.Tiện ích mở rộng tệp ưa thích (hoặc phổ biến nhất) cho tệp dưa?

Câu hỏi liên quan là loại MIME nào được ưu tiên hơn để gửi dưa chua giữa các hệ thống sử dụng API REST?

+1

Có gì buồn cười là tôi chắc chắn rằng ngày xửa một thời gian tôi đã sử dụng .pkl. – idjaw

+1

Vì một số lý do, điều này không có trong tài liệu Python 3, nhưng trong tài liệu Python 2 và chỉ định 'pkl' -> https://docs.python.org/2/library/pickle.html#example – idjaw

+3

Tránh mọi lúc mọi nơi có thể . Có một lý do khiến các tài liệu cảnh báo chống lại việc sử dụng dưa chua - nó không an toàn, nó không bao giờ được an toàn, và nó sẽ không bao giờ an toàn. Thay vào đó, hãy sử dụng mô-đun json. – KingRadical

Trả lời

11

Từ Python 2 docs:

output = open('data.pkl', 'wb')

Kết quả là tôi sẽ chọn .pkl như phần mở rộng.

kiểu MIME từ bình luận dưới đây:

application/octet-stream sẽ tốt hơn không phụ thuộc vào giao thức

Xem What is the HTTP "content-type" to use for a blob of bytes?

+0

'text/plain' có thể không hoạt động tùy thuộc vào giao thức pickle đang được sử dụng - giao thức phiên bản 0 là giao thức duy nhất là ASCII. – martineau

+1

Điều đó nói rằng, tôi nghĩ rằng 'ứng dụng/octet-stream' sẽ tốt hơn bất kể giao thức - xem câu hỏi [_What là" nội dung kiểu HTTP "HTTP để sử dụng cho một blob byte? _] (Http: // stackoverflow. com/questions/13223855/what-is-the-http-content-type-to-use-cho-a-blob-of-byte) – martineau

Các vấn đề liên quan