int.to_bytes
newba = bytearray[]
8 Các đối tượng có phương thức TO_BYTES có thể được sử dụng để chuyển đổi INT thành byte tương ứng của nó:>>> import sys
>>> [i.to_bytes[1, sys.byteorder] for i in b'123']
[b'1', b'2', b'3']
Như với một số câu trả lời khác, không rõ điều này dễ đọc hơn giải pháp ban đầu của OP: các đối số độ dài và byteorder làm cho nó trở nên ồn ào hơn tôi nghĩ.
struct.unpack
Một cách tiếp cận khác là sử dụng struct.unpack, mặc dù điều này cũng có thể được coi là khó đọc, trừ khi bạn quen thuộc với mô -đun cấu trúc:
>>> import struct
>>> struct.unpack['3c', b'123']
[b'1', b'2', b'3']
.
Màn biểu diễn
>>> import random, timeit
>>> bs = bytes[random.randint[0, 255] for i in range[100]]
>>> # OP's solution
>>> timeit.timeit[setup="from __main__ import bs",
stmt="[bytes[[b]] for b in bs]"]
46.49886950897053
>>> # Accepted answer from jfs
>>> timeit.timeit[setup="from __main__ import bs",
stmt="[bs[i:i+1] for i in range[len[bs]]]"]
20.91463226894848
>>> # Leon's answer
>>> timeit.timeit[setup="from __main__ import bs",
stmt="list[map[bytes, zip[bs]]]"]
27.476876026019454
>>> # guettli's answer
>>> timeit.timeit[setup="from __main__ import iter_bytes, bs",
stmt="list[iter_bytes[bs]]"]
24.107485140906647
>>> # user38's answer [with Leon's suggested fix]
>>> timeit.timeit[setup="from __main__ import bs",
stmt="[chr[i].encode['latin-1'] for i in bs]"]
45.937552741961554
>>> # Using int.to_bytes
>>> timeit.timeit[setup="from __main__ import bs;from sys import byteorder",
stmt="[x.to_bytes[1, byteorder] for x in bs]"]
32.197659170022234
>>> # Using struct.unpack, converting the resulting tuple to list
>>> # to be fair to other methods
>>> timeit.timeit[setup="from __main__ import bs;from struct import unpack",
stmt="list[unpack['100c', bs]]"]
1.902243083808571
newba = bytearray[]
9 dường như ít nhất là một thứ tự nhanh hơn so với các phương pháp khác, có lẽ là do nó hoạt động ở cấp độ byte. newba = bytearray[]
2, mặt khác, thực hiện tồi tệ hơn hầu hết các phương pháp "rõ ràng". Nếu tôi có danh sách Python [
Nội dung chính ShowShow
- Byte, bytearray
- BYTE LIÊN QUAN
- Các hàm byte [] và bytearray []
- Tạo đối tượng byte trong Python
- Ví dụ-2:
- Chuyển đổi byte thành chuỗi
- Ví dụ-2:
- Ví dụ-3:
- Ví dụ-3:
- Chuyển đổi byte thành chuỗi
- Ví dụ-2:
- Ví dụ-3:
- Chuyển đổi byte thành chuỗi
- Ví dụ-2:
- Ví dụ-3:
- Ví dụ 1:
- Mã số đại diện cho một ký tự của đối tượng byte trong Python
- Xác định một ký tự bảng ánh xạ để sử dụng với đối tượng byte trong Python
- Chuyển đổi byte thành hex trong python
- Sử dụng các toán tử + và * với các đối tượng byte trong Python Python break, continueNext: Python String
- Làm thế nào để bạn thêm byte với nhau trong Python?
Bạn có thể cắt các byte trong Python?
- Byte, bytearray
- BYTE LIÊN QUAN
- Các hàm byte [] và bytearray []
- Tạo đối tượng byte trong Python
- Ví dụ-2:
- Chuyển đổi byte thành chuỗi
- Ví dụ-2:
- Chuyển đổi byte thành chuỗi
- Chuyển đổi byte thành chuỗi
- Chuyển đổi byte thành chuỗi
- Ví dụ-3:
- Ví dụ-2:
- Chuyển đổi byte thành chuỗi
- Ví dụ-3:
- Ví dụ-2:
- Ví dụ-3:
- Ví dụ 1:
- Ví dụ-3:
- Ví dụ 1:
- Mã số đại diện cho một ký tự của đối tượng byte trong Python
- Xác định một ký tự bảng ánh xạ để sử dụng với đối tượng byte trong Python
- Chuyển đổi byte thành hex trong python
>>> data = [0]
>>> i, count = 1, 4
>>> data += [i] * count
>>> data
[0, 1, 1, 1, 1]
Sử dụng các toán tử + và * với các đối tượng byte trong Python Python break, continueNext: Python String
Làm thế nào để bạn thêm byte với nhau trong Python?Sự khác biệt giữa byte và bytearray trong Python là gì? Apr 10, 2016 at 1:40
user200783user200783user200783user200783user200783
Bạn có thể cắt các byte trong Python?11 gold badges63 silver badges125 bronze badges
1
newba = bytearray[]
4] và hai số nguyên [newba = bytearray[]
5 và newba = bytearray[]
6], tôi có thể dễ dàng nối các bản sao newba = bytearray[]
6 của newba = bytearray[]
5 lên newba = bytearray[]
4:Nội dung chínhApr 10, 2016 at 2:12
4
Chuyển đổi chuỗi hex thành byte>>> from itertools import repeat >>> data = bytearray[[0]] >>> data.extend[repeat[1, 3]] >>> data bytearray[b'\x00\x01\x01\x01'] 5
12?>>> import struct >>> struct.unpack['3c', b'123'] [b'1', b'2', b'3']
Chuyển đổi byte thành hex trong python
Cách lấy ký tự từ mã số trong các đối tượng byte trong PythonXác định độ dài của một đối tượng byte trong PythonApr 10, 2016 at 2:04
Score_UnderScore_UnderScore_UnderScore_UnderScore_Under
Sự khác biệt giữa byte và bytearray trong Python là gì?10 silver badges18 bronze badges
Làm thế nào để bạn tạo một mảng byte trong Python?Apr 10, 2016 at 1:40Làm thế nào tôi có thể làm điều tương tự nếu 11 gold badges63 silver badges125 bronze badges
newba = bytearray[]
newba = bytearray[]
4 là >>> import struct
>>> struct.unpack['3c', b'123']
[b'1', b'2', b'3']
11? Có cần phải tạo một danh sách trước, ví dụ: >>> import struct
>>> struct.unpack['3c', b'123']
[b'1', b'2', b'3']
12? Hỏi ngày 10 tháng 4 năm 2016 lúc 1:40Apr 10, 2016 at 1:40>>> import struct
>>> struct.unpack['3c', b'123']
[b'1', b'2', b'3']
113.3k11 Huy hiệu vàng63 Huy hiệu bạc125 Huy hiệu Đồng11 gold badges63 silver badges125 bronze badgesApr 10, 2016 at 2:12
Byte, bytearray
>>> import struct
>>> struct.unpack['3c', b'123']
[b'1', b'2', b'3']
13, tôi sẽ đề xuất >>> import struct
>>> struct.unpack['3c', b'123']
[b'1', b'2', b'3']
14.newba = bytearray[]
2newba = bytearray[]
4Đã trả lời ngày 10 tháng 4 năm 2016 lúc 2:12Apr 10, 2016 at 2:12
BYTE LIÊN QUAN
newba = bytearray[]
9Các hàm byte [] và bytearray []
Tạo đối tượng byte trong Python
Ví dụ-2:
Syntax:
newba = bytearray[]
0Ví dụ-3::
Ví dụ-3:
Syntax:
newba = bytearray[]
1Ví dụ-2:
- Ví dụ-3:
- Ví dụ 1:
- Ví dụ-3:
- Ví dụ 1:
Mã số đại diện cho một ký tự của đối tượng byte trong Python
Tạo đối tượng byte trong Python
Ví dụ-2:
Chuyển đổi byte thành chuỗi
newba = bytearray[]
2Ví dụ-2:
Code:
newba = bytearray[]
20Output:
newba = bytearray[]
21Chuyển đổi byte thành chuỗi
Chuyển đổi byte thành chuỗi
newba = bytearray[]
22Output:
newba = bytearray[]
23Ví dụ-2:
Chuyển đổi byte thành chuỗi
Code:
Ví dụ-2:Output:
Chuyển đổi byte thành chuỗiVí dụ-2:
Code:
newba = bytearray[]
26Output:
newba = bytearray[]
27Chuyển đổi byte thành chuỗi
Code:
newba = bytearray[]
28Output:
newba = bytearray[]
29Chuyển đổi byte thành chuỗi
Chuyển đổi byte thành chuỗi
Chuyển đổi byte thành chuỗi
newba = bytearray[]
40Output:
newba = bytearray[]
41Ví dụ-2:
Chuyển đổi byte thành chuỗi
newba = bytearray[]
42Output:
newba = bytearray[]
43Ví dụ-2:
Chuyển đổi byte thành chuỗi
Code:
newba = bytearray[]
44Output:
newba = bytearray[]
45Ví dụ-2:
Code:
newba = bytearray[]
46Output:
newba = bytearray[]
47Ví dụ-3:
Ví dụ-3:
Code:
newba = bytearray[]
48Output:
newba = bytearray[]
49Ví dụ-2:
Code:
newba = bytearray[]
60Output:
newba = bytearray[]
61Example-3:
Code:
newba = bytearray[]
62Output:
newba = bytearray[]
63Ví dụ-3:
newba = bytearray[]
64Chuyển đổi byte thành chuỗi
newba = bytearray[]
65Ví dụ-3:
newba = bytearray[]
66newba = bytearray[]
67Ví dụ-3:
newba = bytearray[]
68Chuyển đổi byte thành chuỗi
newba = bytearray[]
69Ví dụ-3:
Ví dụ 1:Chuyển đổi chuỗi hex thành byte
newba = bytearray[]
1Mã số đại diện cho một ký tự của đối tượng byte trong Python
newba = bytearray[]
2Xác định một ký tự bảng ánh xạ để sử dụng với đối tượng byte trong Python
newba = bytearray[]
3Chuyển đổi byte thành hex trong python Python break, continue
Next: Python String
Cách lấy ký tự từ mã số trong các đối tượng byte trong Python Python break, continueNext: Python String
Xác định độ dài của một đối tượng byte trong Python
Sử dụng các toán tử + và * với các đối tượng byte trong Python Python break, continueNext: Python Stringcall the Byte. join[list] method. If you try to join a list of Bytes on a string delimiter, Python will throw a TypeError , so make sure to call it on a Byte object b' '. join[...]
Làm thế nào để có được một byte từ một đối tượng byte trong Python?call the Byte.join[list] method. If you try to join a list of Bytes on a string delimiter, Python will throw a TypeError , so make sure to call it on a Byte object b' '. join[...]
Làm thế nào để bạn thêm byte với nhau trong Python?bytes[] returns an object that cannot be modified, and bytearray[] returns an object that can be modified.
Để tham gia một danh sách các byte, hãy gọi phương thức byte.join [danh sách]. Nếu bạn cố gắng tham gia một danh sách các byte trên một dấu phân cách chuỗi, Python sẽ ném một kiểu mẫu, vì vậy hãy đảm bảo gọi nó trên đối tượng byte b ''. tham gia[...]call the Byte.join[list] method. If you try to join a list of Bytes on a string delimiter, Python will throw a TypeError , so make sure to call it on a Byte object b' '. join[...]bytes[] returns an object that cannot be modified, and bytearray[] returns an object that can be modified.
Sự khác biệt giữa byte và bytearray trong Python là gì?You can do indexing and slicing. And then built-in Python functions length— len[] — min[] , and max[] can be used on bytes objects also, along with type[] .
Sự khác biệt giữa byte [] và bytearray [] là byte [] trả về một đối tượng không thể sửa đổi và bytearray [] trả về một đối tượng có thể được sửa đổi.bytes[] returns an object that cannot be modified, and bytearray[] returns an object that can be modified.You can do indexing and slicing. And then built-in Python functions length— len[] — min[] , and max[] can be used on bytes objects also, along with type[] .
Bạn có thể cắt các byte trong Python?
Các đối tượng byte hỗ trợ các hoạt động trình tự chung mà bạn đã sử dụng cho đến thời điểm này: các toán tử, các toán tử, nối và sao chép.00:18 Bạn có thể thực hiện lập chỉ mục và cắt lát.Và sau đó tích hợp các hàm python chiều dài LEN LEN []-min [] và max [] cũng có thể được sử dụng trên các đối tượng byte, cùng với loại [].You can do indexing and slicing. And then built-in Python functions length— len[] — min[] , and max[] can be used on bytes objects also, along with type[] .
Làm thế nào để bạn tạo một mảng byte trong Python?