Có là bytearray
loại bằng Python - nó là chậm hơn so với dây thường, nhưng hành xử chủ yếu như một chuỗi C: nó là có thể thay đổi, acessing yếu tố inidividual nâng 0-255 số nguyên, insetead của chuỗi con với chiều dài 1, và bạn có thể gán cho các phần tử. Tuy nhiên, nó được thể hiện dưới dạng một chuỗi, và bằng Python 2, có thể được sử dụng trong hầu hết các nơi một chuỗi có thể mà không bị đúc đến một đối tượng str:
>>> text = bytearray("a")
>>> text
bytearray(b'a')
>>> print text
a
>>> text[0]+=1
>>> print text
b
>>> text[0]
98
>>> print "other_text" + text
other_textb
Khi sử dụng Python 3, để sử dụng các nội dung của một bytearray như một đối tượng văn bản, bạn chỉ cần gọi phương thức giải mã của nó với một mã hóa thích hợp chẳng hạn như "latin1" hoặc utf-8" :.?
>>> print ("other_text" + text.decode("latin1"))
Nó sẽ làm việc bạn có ý nghĩa gì bởi 'tốt nhất' – zmbq
được cảnh báo rằng chuỗi trong Python được lưu trữ với một mã hóa Trong Python 2.x, mã hóa mặc định là ASCII mà thêm một số nguyên không phải là một vấn đề.Trong Python 3.x, các chuỗi mặc định là UTF8 unicode Bạn sẽ nhận được một er ror khi thêm một số nguyên để unicode ký tự nếu nó tràn vượt quá 127. http://docs.python.org/howto/unicode.html#the-unicode-type – shimofuri
@shimofuri, python 3 chuỗi là Unicode. Utf-8 là một bảng mã. – alexis