Что вернёт выражение 'П'.encode('utf-8')?
AРезультат
b'\xd0' — потому что encode() берёт только первый байт символаBРезультат
b'П' — потому что encode() просто добавляет префикс b к строкеCРезультат
b'\xd0\x9f' — двухбайтовое UTF-8 представление символа 'П'DБудет исключение
UnicodeError — кириллицу нельзя закодировать в UTF-8Правильный ответ. Метод
encode() преобразует строку str в последовательность байтов bytes в указанной кодировке.Разбор
Кириллический символ 'П' в кодировке UTF-8 занимает два байта: \xd0 и \x9f. Результат 'П'.encode('utf-8') — объект bytes: b'\xd0\x9f'. Тип bytes хранит именно сырые байты, а не символы. Обратная операция — b'\xd0\x9f'.decode('utf-8') — вернёт строку 'П'.
Проверь себя · 1/3разбор после ответа
Какое значение будет у
msg после выполнения name = "Анна" и msg = f"Привет, {name}!"?Ещё вопросы по теме «Синтаксис и типы данных»
- Какой результат вернёт вызов `type(10)`?
- После выполнения `y = str(42)` чему равен `y` и какой у него тип?
- Какая проверка наиболее корректна, чтобы убедиться, что переменная `x` равна `None`?
- Чему равно значение `result` после выполнения `result = 3 < 5`?
- Что вернёт выражение `" Python ".strip()`?
- Все вопросы по «Синтаксис и типы данных» →