Python chuyển đổi thành mảng byte

Cho một chuỗi byte. Nhiệm vụ là viết chương trình Python để chuyển byte chuỗi này thành danh sách các số nguyên.  

Phương pháp 1. Bằng cách sử dụng hàm list[]

Hàm list[] được sử dụng để tạo danh sách từ iterable đã chỉ định được lấy làm tham số của nó

cú pháp

danh sách [[có thể lặp lại]]

Thông số. Hàm này chấp nhận một tham số duy nhất được minh họa bên dưới

  • lặp đi lặp lại. Đây là trình tự được chỉ định sẽ được tạo thành một danh sách khác

Giá trị trả về. Hàm này trả về một danh sách mới được tạo từ iterable đã cho được truyền dưới dạng đối số của nó

Ví dụ. Chương trình Python chuyển chuỗi byte thành danh sách các số nguyên

Python3




1
8

1
9

1
0

 

1
1

1
2
1
3
1
4
1
0

 

1
1

1
2

1
3

1
4

1
5
1
6
1
7
1
8

đầu ra

[71, 70, 71]

Phương pháp 2. Bằng cách sử dụng hàm for loop và ord[]

Hàm ord[] được sử dụng để trả về số đại diện cho mã Unicode của một ký tự byte được chỉ định

cú pháp

thứ tự [ký tự]

Thông số. Hàm này chấp nhận một tham số duy nhất được minh họa bên dưới

  • nhân vật. Đây là chuỗi byte được chỉ định

Giá trị trả về. Hàm này trả về số đại diện cho mã Unicode của một ký tự byte được chỉ định

Ví dụ. Chương trình Python chuyển chuỗi byte thành danh sách các số nguyên

Python3




1
8

1
9

1
0

 

1
02

1
03
1
3
1
05

 

________ 106 ________ 23 ________ 108

 

1
09

1
80

________ 181 ________ 182 ________ 183 ________ 184

 

1
85
1
86

1
85
1
88

1
85
1
90

1
85
1
92
1
93
1
6
1
82
1
96

 

1
97

1
5
1
99

đầu ra

[71, 70, 71, 32, 105, 115, 32, 97, 32, 67, 83, 32, 80, 111, 114, 116, 97, 108]

Phương pháp 3. Bằng cách sử dụng hàm from_bytes[]

Hàm from_bytes[] được sử dụng để chuyển đổi chuỗi byte đã chỉ định thành các giá trị int tương ứng của nó

Ba đối số của phương thức này là tùy chọn. Đối số đầu tiên được sử dụng để khởi tạo danh sách byte. Nếu đối số đầu tiên là chuỗi, thì đối số thứ hai được sử dụng để mã hóa. Cuối cùng, đối số thứ ba được sử dụng để hiển thị lỗi nếu quá trình mã hóa không thành công

Cú pháp của phương thức byte[]

byte [[ data_source [, encoding [, errors]]]]

Tất cả các đối số của hàm bytes[] là tùy chọn, giống như phương thức bytearray[]. Chức năng của các đối số này cũng giống như phương thức bytearray[] đã đề cập ở trên

Phương pháp chuyển đổi bytearray thành byte trong Python được hiển thị bên dưới, sử dụng một số ví dụ đơn giản để hiểu rõ hơn về quy trình này

ví dụ 1. Chuyển đổi dữ liệu danh sách từ bytearray thành byte

Khi hàm bytearray[] chỉ chứa một đối số, giá trị của đối số sẽ là một dữ liệu từ điển hoặc biến. Ví dụ sau đây cho thấy cách một đối tượng từ điển có thể được chuyển đổi thành một đối tượng bytearray và cách một đối tượng bytearray sau đó có thể được chuyển đổi thành một đối tượng byte. Tiếp theo, vòng lặp for đầu tiên được sử dụng để hiển thị các giá trị của bảng dịch mã ASCII và vòng lặp for thứ hai được sử dụng để hiển thị các ký tự của các mã ASCII tương ứng

#. /usr/bin/env python3
 
# Xác định danh sách
dữ liệu danh sách =< . [72, 69, 76, 76, 79]
# Print the content of the list
print["\nThe dictionary values are :\n ", dữ liệu danh sách .
 
# Initialize bytearray object with list
byteArrayObject = bytearray[listdata]
# Print bytearray object value
print["\nThe output of bytearray[] method :\n ", byteArrayObject .
 
# Convert the bytearray object into  bytes object
byteObject = bytes[byteArrayObject]
# Print bytes object value
print["\nThe output of bytes[] method :\n ", byteObject .
 
print["\nThe ASCII values of bytes"]
# Iterate the bytes object using loop
for val in byteObject:
  in[ val ,< . ' ', end='']
 
print["\nThe string values of bytes"]
# Iterate the bytes object using loop
for val in byteObject:
  in[chr[

Chủ Đề