2013-10-22 68 views
17

添加前綴「B」的字符串將其轉換爲字節:向python變量添加「b」前綴?

b'example' 

但我無法弄清楚如何使用變量做到這一點。假設string = 'example',這些都不似乎工作:

b(string) 
b string 
b'' + string 

有沒有一種簡單的方法來做到這一點?

+2

b轉換字符串str的字節,哎呦你是正確的而不是二進制 –

+0

。改變了它。 – zombio

回答

17
# only an example, you can choose a different encoding 
bytes('example', encoding='utf-8') 

在Python3:

字節文字總是與 'b' 或 'B' 前綴;它們產生的字節 實例類型而非STR型。它們可能只有 包含ASCII字符;具有128或更大 數值必須用轉義表示字節。

在Python2:

'b' 或 'B' 的前綴在Python 2被忽略;它表明 字面應成爲文字一個字節在Python 3.

更多字節():

字節([源[,編碼[,錯誤]]])

返回一個新的「字節」對象,它是 整數的不可變序列,範圍爲0 < = x < 256. bytes是不可變版本 bytearray - 它具有相同的非變異方法和相同的索引 和切片行爲。

因此,構造器參數被解釋爲對字節組()。

字節對象也可以用文字創造,看到字符串和字節 文字。

4

使用bytes()

>>> bytes("hello", encoding="ascii") 
b'hello'