2011-08-27 56 views

回答

9

使用the int functionbase2以整數形式讀取二進制值。

n = int('01010101', 2) 

Python 2中使用字符串來處理二進制數據,因此會使用the chr() function的整數轉換爲一個字節的字符串。

data = chr(n) 

Python 3以不同方式處理二進制和文本,因此您需要使用the bytes type來代替。這並沒有與chr()函數直接等價,但bytes構造函數可以獲取一個字節值列表。我們將n放在一個元素數組中,並將其轉換爲bytes對象。

data = bytes([n]) 

一旦你有你的二進制字符串,可以以二進制方式打開一個文件,寫這樣的數據吧:

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

非常清楚和全面。謝謝 – xiaohan2012

+1

對於python 2.6+,你最好使用'bytearray([n])''。 [見文檔](http://docs.python.org/2/library/functions.html#bytearray)。 – ford

相關問題