Теперь запакуем строку.
В этом случае следует передавать тип данных 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
#Norvegia🇳🇴
#Parlamentari
Risultati preliminari.
🟥 Partito Laburista (#Ap|PES): 28,0%
🟦 Partito del Progresso (#FrP|Destra): 23,9%
🟦 Partito Conservatore (#H|PPE): 14,6%
🟪 Partito Socialista di Sinistra (#SV|LEFT): 5,6%
🟩 Partito di Centro (#Sp|Centro euroscettico): 5,6%
🟥 Rosso (#R|Sinistra anticapitalista): 5,3%
🟩 Partito Verde (#MDG|EGP): 4,7%
🟨 Partito Cristiano-Democratico (#KrF|PPE): 4,2%
🟩 Partito Liberale (#V|ALDE): 3,7%
Altri: 4,4%
#Norvegia🇳🇴
#Parlamentari
Risultati parziali.
🟥 Partito Laburista (#Ap|PES): 28,1%
🟦 Partito del Progresso (#FrP|Destra): 23,9%
🟦 Partito Conservatore (#H|PPE): 14,6%
🟩 Partito di Centro (#Sp|Centro euroscettico): 5,6%
🟪 Partito Socialista di Sinistra (#SV|LEFT): 5,6%
🟥 Rosso (#R|Sinistra anticapitalista): 5,3%
🟩 Partito Verde (#MDG|EGP): 4,7%
🟨 Partito Cristiano-Democratico (#KrF|PPE): 4,2%
🟩 Partito Liberale (#V|ALDE): 3,7%
@TuttoElezioni
#Norvegia🇳🇴
#Parlamentari
Risultati parziali.
Distribuzione provvisoria dei seggi.
🟥 Partito Laburista (#Ap|PES): 53
🟦 Partito del Progresso (#FrP|Destra): 48
🟦 Partito Conservatore (#H|PPE): 24
🟩 Partito di Centro (#Sp|Centro euroscettico): 9
🟪 Partito Socialista di Sinistra (#SV|LEFT): 9
🟥 Rosso (#R|Sinistra anticapitalista): 9
🟩 Partito Verde (#MDG|EGP): 7
🟨 Partito Cristiano-Democratico (#KrF|PPE): 7
🟩 Partito Liberale (#V|ALDE): 3
@TuttoElezioni
#Norvegia🇳🇴
#Parlamentari
Risultati parziali.
🟥 Partito Laburista (#Ap|PES): 28,2%
🟦 Partito del Progresso (#FrP|Destra): 23,9%
🟦 Partito Conservatore (#H|PPE): 14,6%
🟩 Partito di Centro (#Sp|Centro euroscettico): 5,7%
🟪 Partito Socialista di Sinistra (#SV|LEFT): 5,5%
🟥 Rosso (#R|Sinistra anticapitalista): 5,3%
🟩 Partito Verde (#MDG|EGP): 4,6%
🟨 Partito Cristiano-Democratico (#KrF|PPE): 4,2%
🟩 Partito Liberale (#V|ALDE): 3,6%
@TuttoElezioni
#Norvegia🇳🇴
#Parlamentari
Risultati parziali.
🟥 Partito Laburista (#Ap|PES): 28,1%
🟦 Partito del Progresso (#FrP|Destra): 24,3%
🟦 Partito Conservatore (#H|PPE): 14,5%
🟩 Partito di Centro (#Sp|Centro euroscettico): 5,8%
🟪 Partito Socialista di Sinistra (#SV|LEFT): 5,4%
🟥 Rosso (#R|Sinistra anticapitalista): 5,3%
🟩 Partito Verde (#MDG|EGP): 4,5%
🟨 Partito Cristiano-Democratico (#KrF|PPE): 4,3%
🟩 Partito Liberale (#V|ALDE): 3,5%
@TuttoElezioni