Теперь запакуем строку.
В этом случае следует передавать тип данных 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
Papa #LeoneXIV riceverà in udienza, giovedì 9 aprile, alle ore 11.30, nella Sala Clementina del Palazzo Apostolico, in Vaticano, alcuni sportivi italiani, rappresentanti di tutti coloro che hanno partecipato alle #Olimpiadi e alle #Paralimpiadi invernali di #MilanoCortina, per mettere in risalto i successi degli atleti, la cui passione e le cui capacità hanno arricchito così tanto le nostre vite.
Proprio nel giorno di apertura dei Giochi, il 6 febbraio scorso, il Santo Padre ha firmato la Lettera “La vita in abbondanza” sul valore dello sport. A coordinare l’iniziativa dell’Udienza è il Dicastero per la Cultura e l’Educazione, con il coinvolgimento di Athletica Vaticana, in collaborazione con il Comitato Nazionale Olimpico Italiano (Coni) e il Comitato Italiano Paralimpico (Cip) Significativamente, durante l’Udienza sarà presente in sala la “Croce degli Sportivi” che, per tutta la durata dei Giochi, è stata collocata nella basilica di San Babila a Milano.
Alcuni atleti si recheranno poi al Dispensario Pediatrico “Santa Marta”, sempre in Vaticano, per incontrare alcune famiglie in situazioni di povertà e fragilità.
Nel giorno in cui #Milano accoglie la Croce Olimpica degli Sportivi in vista dei Giochi di #MilanoCortina, Papa #LeoneXIV auspica che "queste giornate di sana competizione contribuiscano a costruire ponti tra culture e popoli, promuovendo l’accoglienza, la solidarietà e la pace”.
Le parole del Pontefice arrivano nel capoluogo lombardo tramite un telegramma, a firma del Cardinale Segretario di Stato, Pietro Parolin, inviato a mons. Mario Delpini, Arcivescovo di Milano, che questa sera presiede Messa a San Babila, chiesa dove sarà custodita la Croce Olimpica per tutta la durata dei Giochi Olimpici e Paralimpici.
Il Santo Padre, salutando "quanti prendono parte alla celebrazione” “auspica" altresì che le #Olimpiadi suscitino "sentimenti di amicizia e di fraternità, rinsaldando la consapevolezza del valore dello sport al servizio dello sviluppo integrale della persona umana”.
“Siano giorni di festa! Sia festa per l’incontro di pace tra i popoli, sia festa per la bellezza delle gare e dei risultati, sia festa perché le Olimpiadi e le #Paralimpiadi non escludono nessuno”, le parole di mons. Delpini durante l'omelia.
“Siano giorni di profezia - prosegue l'Arcivescovo -, profezia della vocazione alla fraternità universale, profezia per la testimonianza di onestà in ogni cosa, profezia perché le Olimpiadi e le Paralimpiadi piantano nella vicenda umana eccellenza, amicizia, rispetto”.
Il presule chiede inoltre che siano “giorni di condivisione, perché la festa non dimentica le tragedie, perché le risorse non siano per i ricchi, ma per tutti, perché le Olimpiadi e le Paralimpiadi alimentano la cultura della pace”.
Dall'Arcivescovo anche il richiamo all'ascolto del corpo: "Il tuo corpo parla a chi ti incontra. Non ridurre il corpo a una macchina da sfruttare, non ridurre il corpo a un meccanismo complicato che ogni tanto deve essere aggiustato, non ridurre il corpo tuo e altrui a un oggetto da desiderare, non ridurre il corpo a una prigione di cui liberarsi, a un’apparenza di cui vergognarsi”.
“In queste settimane i Giochi saranno una specie di festival del corpo”, prosegue il presule, sottolineando che gli atleti “potranno istruire la città e tutti coloro che sanno ascoltare”. Lo #sport, per mons. Delpini, è “una scuola di ascesi, di morale, di umanità, di vita, di audacia e di fantasia”. Riferendosi alla croce degli sportivi, l’arcivescovo spiega: “Il corpo di Cristo, crocifisso per amore, è l’apertura per andare oltre e accogliere il mistero. Se volete sapere che cos’è l’amore, guardate a Gesù, adorate il corpo crocifisso e risorto”.
📸 Arcidiocesi di Milano