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. Show
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ó
Ví dụ. Chương trình Python chuyển chuỗi byte thành danh sách các số nguyên Python318 19 10
11 12 13 14 10
11 12 13 14 15 16 17 18 đầ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
Ví dụ. Chương trình Python chuyển chuỗi byte thành danh sách các số nguyên Python318 19 10
102 103 13 105
________ 106 ________ 23 ________ 108
109 180 ________ 181 ________ 182 ________ 183 ________ 184
185 186 185 188 185 190 185 192 193 16 182 196
197 15 199 đầu ra
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 byteKhi 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 đầu ra Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh. Ở đây, 72, 69, 76 và 79 lần lượt là mã ASCII của 'H,' 'E,' 'L,' và 'O,' ví dụ 2. Chuyển đổi dữ liệu chuỗi từ bytearray thành byteVí dụ sau đây cho thấy việc chuyển đổi đối tượng bytearray thành đối tượng byte trong dữ liệu chuỗi. Hai đối số được sử dụng trong phương thức bytearray() của tập lệnh này. Đối số đầu tiên chứa giá trị chuỗi, trong khi đối số thứ hai chứa chuỗi mã hóa. Ở đây, mã hóa 'utf-8' được sử dụng để chuyển đổi thành đối tượng bytearray. Phương thức giải mã () được sử dụng trong tập lệnh để chuyển đổi các đối tượng byte thành dữ liệu chuỗi. Mã hóa tương tự được sử dụng tại thời điểm chuyển đổi #. /usr/bin/env python3 đầu ra Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh ví dụ 3. Chuyển đổi dữ liệu số nguyên từ bytearray thành byteCác ví dụ trước cho thấy việc chuyển đổi bytearray và byte dựa trên từ điển và dữ liệu chuỗi. Ví dụ thứ ba này cho thấy việc chuyển đổi bytearray thành byte dựa trên dữ liệu đầu vào. Ở đây, giá trị đầu vào được chuyển đổi thành một giá trị số nguyên và được truyền dưới dạng đối số thông qua hàm bytearray() và đối tượng bytearray sau đó được chuyển đổi thành đối tượng bytes. Các giá trị null dựa trên số nguyên được hiển thị dưới dạng đầu ra của đối tượng bytearray và byte. Tổng số byte được tính thông qua phương thức len() ở cuối tập lệnh và sẽ bằng giá trị số nguyên được truyền dưới dạng đối số vào phương thức bytearray() #. /usr/bin/env python3 đầu ra Sau khi chạy tập lệnh, 6 được lấy làm đầu vào trong đầu ra sau. Sáu giá trị null được hiển thị dưới dạng đầu ra của bytearray và byte. Khi các giá trị null được tính thì nó hiển thị 6 Ví dụ 4. Tạo bytearray Sử dụng append() và Chuyển đổi thành byteVí dụ sau đây cho thấy cách các đối tượng bytearray có thể được tạo thông qua phương thức append() và được chuyển đổi thành byte. Biến arrVal được khai báo ở đây như một đối tượng bytearray. Tiếp theo, phương thức append() được gọi 6 lần để thêm 6 phần tử vào mảng. Mã ASCII của các ký tự, 'P,' 'y,' 't,' 'h,' 'o,' và 'n,' lần lượt là 80, 121, 116, 104, 111 và 1120. Chúng được thêm vào đối tượng bytearray. Đối tượng mảng này được chuyển đổi thành đối tượng byte sau này #. /usr/bin/env python3 đầu ra Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh Phần kết luậnCác phương pháp khác nhau được trình bày trong bài viết này để chuyển đổi mảng phụ thành byte sau khi tạo các đối tượng mảng phụ. Sau khi đọc bài viết này, tôi hy vọng rằng bạn hiểu khái niệm về bytearray và byte, biết cách chuyển đổi bytearray thành byte và có thể hiển thị đầu ra của byte dưới dạng chuỗi và ký tự Làm cách nào để chuyển đổi mảng thành byte trong Python?Trăn. hàm bytearray()
. Nó đưa ra một chuỗi các số nguyên có thể thay đổi trong phạm vi 0
Làm cách nào để chuyển đổi mảng int thành byte trong Python?Một giá trị int có thể được chuyển đổi thành byte bằng cách sử dụng phương thức int. to_bytes() .
Làm cách nào để chuyển đổi mảng byte thành hex trong Python?Sử dụng format() + join() để chuyển đổi Mảng Byte thành Chuỗi Hex
. Định dạng “02” được sử dụng để đệm các số 0 đứng đầu bắt buộc. Hàm nối cho phép nối kết quả thập lục phân thành một chuỗi.
Làm cách nào để chuyển đổi chuỗi hex thành byte?Để chuyển đổi chuỗi hex thành mảng byte, trước tiên bạn cần lấy độ dài của chuỗi đã cho và đưa vào trong khi tạo mảng byte mới. byte[] val = byte mới[str. độ dài() / 2]; |