Python có các codec tiêu chuẩn byte-to-bytes thực hiện các phép biến đổi thuận tiện như được in được in [phù hợp với 7bit ASCII], base64 [phù hợp với chữ số], Hex Escaping, GZIP và BZ2. Trong Python 2, bạn có thể làm:
b'foo'.encode['hex']
Trong Python 3,
import codecs
codecs.getencoder['hex'][b'foo'][0]
3 / import codecs
codecs.getencoder['hex'][b'foo'][0]
4 hoàn toàn cho các chuyển đổi bytesstr. Thay vào đó, bạn có thể làm điều này, hoạt động trên Python 2 và Python 3 [s/encode/decode/g cho nghịch đảo]:import codecs
codecs.getencoder['hex'][b'foo'][0]
Bắt đầu với Python 3.4, có một tùy chọn ít khó xử hơn:
codecs.encode[b'foo', 'hex']
Các codec linh tinh này cũng có thể truy cập được bên trong các mô -đun của riêng chúng [Base64, Zlib, BZ2, UU, Quopri, Binascii]; API ít nhất quán hơn, nhưng đối với các codec nén, nó cung cấp nhiều quyền kiểm soát hơn.
- Hướng dẫn Python
- Python bình luậnComments
- Hoạt động giao diện điều khiển PythonConsole Operations
- Tuyên bố có điều kiện PythonConditional Statements
- Các câu lệnh Vòng lặp PythonLoop Statements
- Python enumEnum
- Các nhà khai thác PythonOperators
- Chức năng PythonFunctions
- Chức năng xây dựng PythonBuiltin Functions
- Chuyển đổi loại PythonConversion
- Các lớp và đối tượng PythonClasses and Objects
- Chức năng toán học PythonMath Functions
Nội dung
- Giới thiệu
- Cú pháp - byte.decode []
- Ví dụ 1: byte thành chuỗi
- Ví dụ 2: Hex byte thành chuỗi
- Ví dụ 3: Hex byte để chuỗi bằng UTF-16
- Bản tóm tắt
Để chuyển đổi đối tượng byte python thành chuỗi, bạn có thể sử dụng phương thức byte.decode [].
Trong hướng dẫn này, chúng tôi sẽ tìm hiểu cú pháp của phương thức byte.decode [] và cách sử dụng phương thức Decode [] để chuyển đổi hoặc giải mã một byte python thành một đối tượng chuỗi.
Cú pháp - byte.decode []
Ví dụ 1: byte thành chuỗi
bytes.decode[encoding]
Ví dụ 2: Hex byte thành chuỗi
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
Bản tóm tắt
Ví dụ 1: byte thành chuỗi
Ví dụ 2: Hex byte thành chuỗi
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
bytesObj = b'52s3a6'
string = bytesObj.decode['utf-8']
print[string]
Ví dụ 2: Hex byte thành chuỗi
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
52s3a6
Ví dụ 2: Hex byte thành chuỗi
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
bytesObj = b'\x68\x65\x6C\x6C\x6F'
string = bytesObj.decode['utf-8']
print[string]
Ví dụ 2: Hex byte thành chuỗi
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
hello
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
Bản tóm tắt
Để chuyển đổi đối tượng byte python thành chuỗi, bạn có thể sử dụng phương thức byte.decode [].
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
bytesObj = b'\x68\x00\x65\x00\x6c\x00\x6c\x00\x6f\x00'
string = bytesObj.decode['utf-16']
print[string]
Ví dụ 2: Hex byte thành chuỗi
Ví dụ 3: Hex byte để chuỗi bằng UTF-16
hello
Bản tóm tắt
Bản tóm tắt
Để chuyển đổi đối tượng byte python thành chuỗi, bạn có thể sử dụng phương thức byte.decode [].
Trong ngôn ngữ lập trình Python, byte giống như một mảng. Khi chúng tôi muốn đại diện cho một nhóm các giá trị byte thì chúng tôi có thể xem xét các loại dữ liệu
import codecs
codecs.getencoder['hex'][b'foo'][0]
7. Các loại dữ liệu byte chỉ cho phép các giá trị chỉ từ 0 đến 255. import codecs
codecs.getencoder['hex'][b'foo'][0]
8 là một trong những hàm tích hợp trong Python. Nó chuyển đổi số nguyên được chỉ định thành giá trị thập lục phân tương ứng. Nó được tiền tố với "0x". Nó trả về một chuỗi thập lục phân.Trong hướng dẫn này, chúng tôi sẽ học cách chuyển đổi byte thành giá trị thập lục phân bằng phương pháp
import codecs
codecs.getencoder['hex'][b'foo'][0]
9 và mô -đun codecs.encode[b'foo', 'hex']
0.Ví dụ: Nhận đối tượng byte từ chuỗi
Như chúng ta đều biết cách chuyển đổi bất kỳ số nguyên hoặc chuỗi nào thành đối tượng byte. Hãy để chúng tôi bắt đầu với việc chuyển đổi một chuỗi thành một đối tượng byte. Chuỗi được chuyển đổi, tức là đối tượng byte có thể được sử dụng để chuyển đổi các giá trị thập lục phân.
import codecs
codecs.getencoder['hex'][b'foo'][0]
0Chuỗi sẽ được chuyển đổi: Tháng ba
Đây là đối tượng byte. Chuỗi được chuyển đổi là: B '\ xff \ xfem \ x00a \ x00r \ x00c \ x00h \ x00'
Converted
string is: b'\xff\xfeM\x00a\x00r\x00c\x00h\x00'
Ví dụ: Chuyển đổi byte thành thập lục phân bằng phương thức hex []
Trong ví dụ trên, chúng tôi đã chuyển đổi chuỗi thành một đối tượng byte. Chúng ta có thể sử dụng đối tượng byte đó để chuyển đổi nó thành giá trị hex.
import codecs
codecs.getencoder['hex'][b'foo'][0]
1
byte được chuyển đổi: b '\ xff \ xfe \ xff \ x00 \ xfe \ x00m \ x00 \ x00 \ x00a \ x00 \ x00 \ x00r \ x00 \ x00 \ x00c \ x00 \ x byte được chuyển đổi thành giá trị hexadecimal: FFFEff00Fe004D000000610000007000000630000006800000000 của đối tượng này là:
byte converted to hexadecimal value: fffeff00fe004d00000061000000720000006300000068000000
Type of this
object is:
Ví dụ: Chuyển đổi byte thành thập lục phân bằng mô -đun Binascii.
Mô -đun Binascii bao gồm các phương pháp khác nhau chuyển đổi nhị phân thành biểu diễn nhị phân được mã hóa khác nhau. Trong mô -đun Binascii, có một phương thức gọi là hexlify [] chuyển đổi các byte thành các giá trị thập lục phân.
import codecs
codecs.getencoder['hex'][b'foo'][0]
2
Chuỗi là: Chuỗi nghiên cứu thành byte: b'studytonight 'hexlify chuyển đổi dữ liệu thành giá trị hexdecimal: b'7374756479746f6e69676874
string to byte: b'studytonight'
hexlify converts the data to hexdecimal value : b'7374756479746f6e69676874'
This is
the converted hex value: 7374756479746f6e69676874
b'studytonight'
Sự kết luận
Trong hướng dẫn này, chúng tôi đã học cách chuyển đổi đối tượng byte sang giá trị hex từ hàm hex [] và mô -đun binascii.