2011-08-27 43 views

Trả lời

9

Sử dụng the int function với base của 2 để đọc giá trị nhị phân dưới dạng số nguyên.

n = int('01010101', 2) 

Python 2 sử dụng chuỗi để xử lý dữ liệu nhị phân, vì vậy bạn sẽ sử dụng the chr() function để chuyển đổi số nguyên thành chuỗi một byte.

data = chr(n) 

Python 3 xử lý nhị phân và văn bản khác nhau, vì vậy bạn cần sử dụng the bytes type để thay thế. Điều này không có tương đương trực tiếp với hàm chr(), nhưng hàm tạo bytes có thể lấy danh sách các giá trị byte. Chúng tôi đặt n trong mảng một phần tử và chuyển đổi thành đối tượng bytes.

data = bytes([n]) 

Một khi bạn có chuỗi nhị phân của bạn, bạn có thể mở một tập tin trong chế độ nhị phân và viết dữ liệu vào nó như thế này:

with open('out.bin', 'wb') as f: 
    f.write(data) 
+0

Khá rõ ràng và toàn diện. Cảm ơn – xiaohan2012

+1

Đối với python 2.6+, bạn có thể sử dụng 'bytearray ([n])' tốt nhất. [Xem doc] (http://docs.python.org/2/library/functions.html#bytearray). – ford

Các vấn đề liên quan