Теперь запакуем строку.
В этом случае следует передавать тип данных 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
Chevrolet Tracker - shaharda hamda shahar tashqarisidagi sarguzashtlar uchun eng yaxshi avtomobildir.
Chevrolet Tracker - идеальный автомобиль для приключений в городе и на природе.
#chevrolet#chevroletuzbekistan#tracker
Chevrolet Tracker - zamonaviy va keng interyer.
O’zingizga o’xshagan zamonaviy va energiyaga boy ixcham krosovver izlayapsizmi?☺️
Sport uslubiga xos,hayratlanarli darajadagi keng interyer, hamyonbop narxlarda ko'ngilochar hamda xavfsizlik bo'yicha ilg'or texnologiyalarni taklif etadi.😎
-------------------------------------------------------
Chevrolet Tracker - стильный и просторный внутри.
Ищете компактный кроссовер , такой же стильный и энергичный ̆, как и вы?😊
Предлагая спортивное исполнение, удивительно просторный интерьер и доступные передовые технологии безопасности и развлечений.😎
#chevrolet#tracker#findnewroads#chevroletuzbekistan
.
You can log and track the phone locations of your family and friends in complete privacy, using your Nextcloud server.
To do this you need to install the Nextcloud PhoneTrack App on your Nextcloud server, and the Android PhoneTrack App on every DeGoogled phone you want to track.
The F-Droid version is old and buggy.
To get the newer Dev Android version, you:
1. Go to the PhoneTrack Dev GitLab page, scroll down and click the "APK Direct Download" link
2. At top "Pipeline" option, click the Download arrow and select "AssembleDevDebug:archive"
3. This downloads a zip file. Extract the zip and install the APK.
CONNECT ALL PHONES AND TRACK
4. On Nextcloud create a dedicated account for PhoneTracking.
5. Create a PhoneTrack "Session" in the Nextcloud PhoneTrack app.
6. Sign each phone into the Nextcloud PhoneTrack account, and on the phone, add a "PhoneTrack log job" to the Session on Nextcloud.
⚡️@LinuxTechIndex
#PhoneTrack#Tracker#Nextcloud