Теперь запакуем строку.
В этом случае следует передавать тип данных bytes.
>>> struct.pack('=s', b'a')
b'a'
Для записи слова следует указывать количество символов.
>>> struct.pack('=5s', b'hello')
b'hello'
Кстати, запакованный вид соответствует исходному тексту. Всё верно, символ есть в таблице ASCII, то есть его код попадает в диапазон 0-127, он может быть записан одним байтом и имеет визуальное представление. А вот что будет если добавить символ вне ASCII
>>> struct.pack(f'=s', b'ё')
SyntaxError: bytes can only contain ASCII literal characters.
Ошибка возникла еще на этапе создания объекта bytes, который не может содержать такой символ. Поэтому надо кодировать эти байты из строки.
>>> enc = 'ёжик'.encode('utf-8')
>>> struct.pack(f'={len(enc)}s', enc)
b'\xd1\x91\xd0\xb6\xd0\xb8\xd0\xba'
Заметьте, длина такой строки в байтах отличается от исходной длины, так как символы вне ASCII записываются двумя байтами и более. Поэтому здесь формат создаём на лету, используя получившуюся длину как каунтер токена.
#libs#basic
A differenza di quanto comunicato ieri, Eleonora #Evi oggi conferma di aver lasciato il partito, oltre a dimettersi da co-portavoce. Non ha rinnovato il tesseramento ad Europa Verde che scadeva ieri. Rispetterà il mandato elettorale rimanendo iscritta al…
Eleonora #Evi accusa Bonelli di pinkwashing: "Non intendo continuare a ricoprire il ruolo di Co-portavoce femminile che, nei fatti, è ridotto a mera carica di facciata."
@UltimoraPolitics
❗️La coportavoce di Europa Verde Eleonora #Evi lascia il partito: "Nei verdi sono vittima di cultura paternalistica e patriarcale, non faccio la donna marionetta." @UltimoraPolitics
❗️La coportavoce di Europa Verde Eleonora #Evi lascia il partito: "Nei verdi sono vittima di cultura paternalistica e patriarcale, non faccio la donna marionetta."
@UltimoraPolitics
#Italia
Alle europee del 2019 il M5S elesse 14 europarlamentari, ma oggi gli europarlamentari grillini sono solamente 7. Dove siedono oggi gli eletti del M5S?
📌#Beghin, #Pignedoli, #Castaldo, #Rondinelli, #Gemma, #Ferrara e #Furore sono rimasti nel M5S
📌#Evi, #Pendicini, #DAmato e #Corrao sono entrati in Europa Verde
📌#Adinolfi ha aderito a Forza Italia
📌#Zullo è un indipendente nel gruppo liberale Renew Europe
📌#Giarrusso è un indipendente nei non iscritti
@UltimoraPolitics