TGViewer
Python: задачки и вопросы Python: задачки и вопросы @quiz_python · 6.9K subscribers
Post #4913 162
По шагам:

1️⃣Строка s состоит из шести кириллических букв.

2️⃣Первый вызов len(s) считает количество символов Юникода в строке, поэтому возвращает значение 6.

3️⃣Метод encode без параметров кодирует строку в байты по стандарту UTF-8, в котором каждый символ кириллицы занимает по два байта.

4️⃣Второй вызов len(s.encode()) определяет размер полученного объекта bytes, что даёт 12 байт.

5️⃣В итоге на экран выводится 6 12.

Почему это важно
Заголовок HTTP Content-Length и многие лимиты протоколов считают байты, а не символы. Если проверять такой лимит через len(s), русский текст окажется вдвое длиннее разрешённого. А если обрезать байты посреди буквы, например "привет".encode()[:3].decode(), будет UnicodeDecodeError. Для байтовых лимитов длину считают через len(s.encode()).
  • ✍ 1
More from @quiz_python
  1. Oct 7, 2026Post #4912
  2. Oct 6, 2026Разбор задачи 1️⃣Строковая переменная name содержит значение report.txt. 2️⃣Метод strip пр…
  3. Oct 6, 2026Post #4910
  4. Oct 2, 2026Развёрнутое пояснение: 1. Вызов orders() создаёт объект генератора, но его тело пока не вы…
  5. Oct 2, 2026Post #4908
  6. Oct 1, 2026Развёрнутое пояснение: 1. Кортеж regions задаёт два ключа: eu и us. 2. dict.fromkeys(regio…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →