Computer >> Máy Tính >  >> Lập trình >> Python

Bytestring Python là gì?

Một chuỗi là một chuỗi các ký tự; đây là một khái niệm trừu tượng và không thể được lưu trữ trực tiếp trên đĩa. Chuỗi byte là một chuỗi các byte - những thứ có thể được lưu trữ trên đĩa. Ánh xạ giữa chúng là một kiểu mã hóa - có khá nhiều trong số này (và có thể có vô số loại) - và bạn cần biết cách nào áp dụng trong trường hợp cụ thể để thực hiện chuyển đổi, vì một mã hóa khác có thể ánh xạ các byte giống nhau sang một chuỗi khác. Ví dụ, cùng một chuỗi byte có thể biểu diễn 2 chuỗi khác nhau ở 2 bảng mã khác nhau. Ví dụ:

>>> b'\xcf\x84o\xcf\x81\xce\xbdo\xcf\x82'.decode('utf-16')
'蓏콯캁澽苏'
>>> b'\xcf\x84o\xcf\x81\xce\xbdo\xcf\x82'.decode('utf-8')
'τoρνoς'

Khi bạn biết mã hóa nào sẽ sử dụng, bạn có thể sử dụng phương thức .decode () của chuỗi byte để lấy chuỗi ký tự phù hợp từ nó. Phương thức .encode () của một chuỗi ký tự đi ngược lại và mã hóa chuỗi ký tự dưới dạng chuỗi byte.