2014-02-17 4 views
0

Мне нужно извлечь байты из строковой переменной в Python (v 2.6), чтобы передать ее как параметр для другой функции, которая ожидает массив байтов.Как извлечь байты из строковой переменной в Python?

Вот пример того, что у меня есть:

myStr = "some string" 

Что мне нужно что-то эквивалент массива байтов, но с переменной myStr .:

bytes = b'some string' 

Я попытался с помощью myStr.encode(), но я получил TypeError из целевой функции.

Любая помощь очень ценится.

+0

Python версия? –

+0

Версия, которую я использую, - 2.6. – Byob

+0

Какую кодировку вы используете для кодирования? И какое кодирование выполняет функция? – icedtrees

ответ

1

В Python 2 тип str is уже закодирован.

Может, вам это послужит?

>>>import array 
>>>s = array.array('b', myStr) 
array('b', [115, 111, 109, 101, 32, 115, 116, 114, 105, 110, 103]) 
+0

Я пробовал этот подход, и он сработал. Все, что мне было нужно, это создать массив со значениями ASCII. Спасибо за помощь! – Byob

1

Вам просто нужен список значений ascii строки?

>>> map(ord, "some string") 
[115, 111, 109, 101, 32, 115, 116, 114, 105, 110, 103] 
Смежные вопросы