Строка Python в 8-байтовый массив

Моя проблема заключается в преобразовании строки в Python в массив следующим образом. Я должен разделить строку на 8-байтовые части. Я не нашел ничего подобного в Интернете. По сути, я хочу создать следующий код PHP на Python:

$eight_byte_packages_array=str_split($data, 8);

0

Решение

В PHP функции str_split

будет разбиваться на байты, а не на символы при работе с многобайтовой кодированной строкой.

Если вы хотите смоделировать эту функцию в Python 3, сначала вам нужно преобразовать строки в байты.

def str_split(string, length):
byte_string = string.encode('utf-8')
return [byte_string[i:i+length] for i in range(0, len(byte_string), length)]

str_split("This is a test.", 8)
>>> [b'This is ', b'a test.']

str_split("これはテストです。", 8)
>>> [b'\xe3\x81\x93\xe3\x82\x8c\xe3\x81',
b'\xaf\xe3\x83\x86\xe3\x82\xb9\xe3',
b'\x83\x88\xe3\x81\xa7\xe3\x81\x99',
b'\xe3\x80\x82']
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector